Estoy en un entorno corporativo (ejecutando Debian Linux) y no lo instalé yo mismo. Accedo a las bases de datos usando Navicat o phpPgAdmin (si eso ayuda). Tampoco tengo acceso de shell al servidor que ejecuta la base de datos.
postgresql
Altamente irregular
fuente
fuente
psql -c 'SELECT version();'
psql postgres -c 'SELECT version();'
sudo -u postgres psql postgres -c 'SELECT version()' | grep PostgreSQL
debería pasar "el rol 'nombre de usuario' no existe".Creo que esto es lo que estás buscando,
Versión del servidor:
Versión del cliente:
fuente
pg_config --version
podría ser engañoso, por ejemplo, si actualiza un servidor Ubuntu y no lo ejecutapg_upgradecluster
, pg_config mostrará la nueva versión en lugar de la que todavía está usando.pg_config --version
El comando:psql --version
no funciona, se queja por esto:dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib Referenced from: /usr/local/bin/psql Reason: image not found
Usando CLI:
Versión del servidor:
Si tiene más de una instalación de PostgreSQL, o si recibe el
postgres: command not found
error " ":Si
locate
no ayuda, intentefind
:Aunque
postmaster
también se puede usar en lugar depostgres
,postgres
es preferible usarlo porquepostmaster
es un alias obsoleto depostgres
.Versión del cliente:
Tan relevante, inicie sesión como
postgres
.Si tiene más de una instalación de PostgreSQL:
Usando SQL:
Versión del servidor:
Si tienes más curiosidad, prueba
=> SHOW all;
.Versión del cliente:
Para lo que vale, se puede ejecutar un comando de shell
psql
para mostrar la versión del cliente delpsql
ejecutable en la ruta. Tenga en cuenta que la ejecuciónpsql
puede ser potencialmente diferente de la de la ruta.fuente
SHOW server_version;
Es muy útil en los scripts para evitar tener que analizar en la larga cadena deSELECT version();
.psql postgres -c "SHOW server_version" -t -A
.-t
elimina encabezados,-A
elimina espacios en blanco de alineación.SHOW server_version_num
en particular, lo cual es útil para las desigualdades.Si está utilizando CLI y es un
postgres
usuario , puede hacer esto:Salida posible :
fuente
La respuesta aceptada es excelente, pero si necesita interactuar mediante programación con la versión PostgreSQL, tal vez sea mejor hacerlo:
Devolverá la versión del servidor como un entero. Así es como se prueba la versión del servidor en la fuente PostgreSQL , por ejemplo:
Más información aquí y aquí .
fuente
Ejecutar comando
Dónde
V debe estar en mayúscula.
fuente
psql
versión (cliente), no la versión del servidor Postgres .en shell psql.exe, ejecute
fuente
Una manera simple es verificar la versión escribiendo
psql --version
terminalfuente
El uso
pgadmin4
se puede ver haciendo doble clic en Servidores> nombre_servidor_aquí> pestaña Propiedades> Versión:Versión 3.5:
Versión 4.1, 4.5:
fuente
El comando pg_config informará el directorio donde están instalados los programas PostgreSQL (--bindir), la ubicación de C incluye archivos (--includedir) y bibliotecas de código de objeto (--libdir), y la versión de PostgreSQL (--version) :
fuente
En mi caso
Espero que ayude a alguien
fuente
Si tiene acceso de shell al servidor (la pregunta menciona que no tiene op, pero en caso de que lo tenga) en un sistema debian / ubuntu
que dará salida a la versión instalada,
donde
Installed: <version>
está la versión instalada del paquete postgres.fuente
$ yum list
para ver que se instalaron ciertos paquetes Postgresql.usar
VERSION
variable especialfuente
No sé qué tan confiable es esto, pero puede obtener dos tokens de versión de forma totalmente automática:
Para que pueda crear rutas a binarios:
Simplemente reemplace 9.2 con este comando.
fuente
psql --version
devuelve la versión delpsql
cliente, no la versión del servidor PostgresPara la versión actual de PgAdmin: 4.16 en el momento de la escritura.
Ver captura de pantalla a continuación:
fuente
Si
Select version()
regresa con Memo, intente usar el comando de esta manera:o
fuente
select version()::varchar(100);
funcionó para mí, pero fue lo mismo queversion()