En esta breve guía, exploraremos cómo verificar qué versión de Postgres se está ejecutando en su máquina o en una instancia de Postgres para las versiones de cliente y servidor.
Índice
- Usando la línea de comandos
- Uso de SQL
- Usar
VERSION
variable especial
1. Usando la línea de comando
Las instalaciones de Postgres proporcionan utilidades tanto de cliente como de servidor que se pueden usar para consultar la instalación de Postgres.
Para verificar la versión, usamos el binario respectivo pero con el -V
o --version
bandera.
Versión del servidor
Para encontrar la versión del servidor de Postgres desde la línea de comando del shell, use postgres
comando con -V
o (--version
) bandera (para la versión):
$ postgres -V
postgres (PostgreSQL) 14.0
A menudo, el comando Postgresql no se agrega a $PATH y normalmente no se puede acceder a él. En tal caso, obtendrá el error:
$ postgres -V
-bash: postgres: command not found
Si conoce la ruta exacta al postgres
ejecutable, escríbalo como /path/to/postgres -V
pero si no usa el locate
dominio. Si obtiene el locate
comando no encontrado así:
# locate bin/postgres
-bash: locate: command not found
Necesitas instalarlo. Estoy usando Rocky Linux 8, similar a Centos 8. Entonces, para verificar qué paquete proporciona eso:
$ sudo dnf whatprovides locate
Last metadata expiration check: 0:44:27 ago on Wed 06 Oct 2021 05:46:04 AM UTC.
mlocate-0.26-20.el8.x86_64 : An utility for finding files by name
Repo : baseos
Matched from:
Filename : /usr/bin/locate
Instalar localizar en centos 8
$ sudo dnf install -y mlocate
Luego actualice locate
base de datos para que pueda encontrar los archivos:
$ sudo updatedb
A continuación, ubiquemos nuestro bin/postgres
.
$ locate bin/postgres
/usr/bin/postgresql-14-setup
/usr/pgsql-14/bin/postgres
/usr/pgsql-14/bin/postgresql-14-check-db-dir
/usr/pgsql-14/bin/postgresql-14-setup
En nuestro caso nos interesa el /usr/pgsql-14/bin/postgres
comando:
$ /usr/pgsql-14/bin/postgres -V
postgres (PostgreSQL) 14.0
Versión del cliente
Postgres proporciona una herramienta de cliente pgsql
que se puede usar para conectarse a postges.
Para ver la versión del cliente, pase -V
marca al psql
comando de utilidad de cliente:
$ psql -V
psql (PostgreSQL) 14.0
Si no encuentra el comando psql, búsquelo con:
$ locate bin/psql
/usr/bin/psql
/usr/pgsql-14/bin/psql
Luego puede proporcionar la ruta completa:
$ /usr/pgsql-14/bin/psql -V
psql (PostgreSQL) 14.0
2. Usando SQL
También podemos usar el símbolo del sistema SQL a través de una declaración SQL para consultar la base de datos Postgesql.
Versión del servidor
Para determinar la versión del servidor, postgres proporciona select version();
postgres=# select version();
version
-----------------------------------------------------------------------------------------------------
---
PostgreSQL 14.0 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.4.1 20200928 (Red Hat 8.4.1-1), 64-b
it
(1 row)
El comando anterior mostrará la información de la versión completa de la base de datos.
También puede consultar desde la línea de comando:
psql -c "SELECT version();"
También puede consultar la versión específica del servidor, en el estándar major.minor.patch
formato, usando el SHOW
comando:
postgres=# show server_version;
server_version
----------------
14.0
(1 row)
El SHOW
El comando se usa para mostrar los parámetros de tiempo de ejecución actuales, que son esencialmente solo una tabla de name/setting
parejas.
Versión del cliente
También podemos emitir una breve instrucción SQL desde un indicador de PostgreSQL para consultar la versión del cliente de psql
. Sin embargo, vale la pena señalar que esto es puramente por conveniencia, ya que en realidad solo le estamos pidiendo a Postgres que emita un comando en el indicador de shell, pero desde dentro el propio indicador de PostgreSQL.
Esto se realiza usando el \!
bandera mientras está conectado al cliente, seguido de la declaración que deseamos emitir:
postgres=# \! psql -V
psql (PostgreSQL) 14.0
Al igual que antes, cuando emitíamos este comando directamente desde el indicador de shell, psql -V
puede devolver su versión de cliente como se indicó anteriormente, o es posible que no se encuentre la ruta.
3. Usar VERSION
variable especial
También podemos usar la VERSION
variable especial definida para postgres
usuario. Para que esto funcione, debemos iniciar sesión como usuario de postgres.
Iniciar sesión como postgres
sudo su - postgres
Luego verifique la versión
$ psql -c "\echo :VERSION"
PostgreSQL 14.0 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.4.1 20200928 (Red Hat 8.4.1-1), 64-bit
Conclusión
Logramos cubrir cómo verificar las versiones de cliente y servidor de postgres en esta guía.