1138 votes

Quelle est la version de PostgreSQL que j'utilise ?

Je suis dans un environnement d'entreprise (sous Debian Linux) et je ne l'ai pas installé moi-même. J'accède aux bases de données en utilisant Navicat ou phpPgAdmin (si cela peut aider). Je n'ai pas non plus d'accès shell au serveur qui exécute la base de données.

4voto

Eutychus Points 123
  1. Utilisation de la ligne de commande Serveur :

    postgres -V

Client :

psql -V
  1. Connectez-vous ensuite à postgres :

    postgres=# select version();

Ou de cli :

psql -c "SELECT version();"
  1. Utilisez VERSION variable spéciale Connectez-vous en tant qu'utilisateur postgres :

    sudo su - postgres

Ensuite :

psql -c "\echo :VERSION"

Consultez ce guide aquí pour une explication complète

3voto

Alex Petrenko Points 523

Je ne sais pas si c'est fiable, mais vous pouvez obtenir deux jetons de la version entièrement automatique :

psql --version 2>&1 | tail -1 | awk '{print $3}' | sed 's/\./ /g' | awk '{print $1 "." $2}'

Vous pouvez donc construire des chemins vers des binaires :

/usr/lib/postgresql/9.2/bin/postgres

Il suffit de remplacer 9.2 par cette commande.

3voto

Lefty G Balogh Points 762

Pour la version actuelle de PgAdmin : 4.16 au moment de l'écriture.

  1. Sélectionnez la BD dont vous avez besoin.
  2. Cliquez sur l'onglet "Propriétés" dans le volet de droite.

Voir la capture d'écran ci-dessous : PGAdmin 4.16 showing DB version 10.10

2voto

Nagev Points 658

Il s'agit d'une question assez ancienne avec de nombreuses bonnes réponses. J'ai trouvé qu'à partir de la version 12, le simple fait d'invoquer le client me dit ce que j'ai besoin de savoir, mais je les ai exécutés sur le shell du serveur. Exemples ci-dessous avec les résultats.

Quand j'étais sur la version 12 :

$ sudo su postgres -c "psql"
psql (12.8 (Ubuntu 12.8-0ubuntu0.20.04.1))

J'ai lu ceci comme si le client et le serveur étaient tous deux à la version 12.

Après avoir mis à jour Ubuntu de 20.04 à 21.04 :

$ sudo su postgres -c "psql"
psql (13.4 (Ubuntu 13.4-0ubuntu0.21.04.1), server 12.8 (Ubuntu 12.8-0ubuntu0.20.04.1))

Il me dit clairement que le client est sur la version 13 mais le serveur est toujours sur la 12, comme je l'ai confirmé :

$ pg_lsclusters
Ver Cluster Port Status Owner    Data directory              Log file
12  main    5432 online postgres /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.log

Remarquez, au passage, ce résultat trompeur, à ce stade :

$ pg_config --version
PostgreSQL 13.4 (Ubuntu 13.4-0ubuntu0.21.04.1)

Après que j'ai amélioré à la version 14 :

$ sudo su postgres -c "psql"
psql (14.0 (Ubuntu 14.0-1.pgdg21.04+1))
Type "help" for help.

postgres=#

Encore une fois, j'interprète cela comme si le client et le serveur étaient tous deux en version 14, ce qui est confirmé une fois de plus :

$ pg_lsclusters
Ver Cluster Port Status                Owner    Data directory              Log file
12  main    5432 down,binaries_missing postgres /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.log
14  main    5433 online                postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log

Cette version est, d'ailleurs, la même que celle obtenue en exécutant la commande SELECT version(); requête.

1voto

Leo Points 21

Exécutez cette requête depuis PostgreSQL : SELECT version() ;

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X