Voir quelle version (ou versions) de PostgreSQL est active sur votre système est un processus relativement simple, mais il existe un certain nombre de méthodes qui peuvent être utilisées. Dans ce didacticiel, nous allons brièvement explorer quatre méthodes pour trouver votre version de PostgreSQL, y compris les versions client et serveur.
Remarque :comme d'habitude lorsque vous travaillez avec PostgreSQL, assurez-vous que vous êtes connecté à votre invite de shell à partir d'un utilisateur non root avec des privilèges Postgres pour que ces commandes fonctionnent correctement.
Utilisation de la ligne de commande du shell
Les installations serveur et client Postgres peuvent être interrogées à l'aide de leurs utilitaires de ligne de commande respectifs.
Affichage de la version du serveur
Pour trouver la version du serveur Postgres à partir de la ligne de commande du shell, lancez simplement un postgres
commande avec le -V
drapeau (pour la version):
$ postgres -V
postgres (PostgreSQL) 9.3.10
Dans le cas où le postgres
commande est introuvable, vous devrez peut-être localiser le répertoire de l'utilitaire. Cela peut être fait en émettant le locate bin/postgres
commande :
$ locate bin/postgres
/usr/lib/postgresql/9.3/bin/postgres
Maintenant avec le chemin direct vers le postgres
utilitaire, vous pouvez l'appeler avec le -V
drapeau comme illustré ci-dessus :
$ /usr/lib/postgresql/9.3/bin/postgres -V
postgres (PostgreSQL) 9.3.10
Affichage de la version client
Pour voir la version du client, encore une fois, passez simplement le -V
drapeau au psql
commande de l'utilitaire client :
$ psql -V
psql (PostgreSQL) 9.3.10
Comme ci-dessus, si vous ne trouvez pas l'utilitaire - ou si vous avez plusieurs installations de PostgreSQL sur cette machine - vous pouvez facilement localiser psql
:
$ locate bin/psql
/usr/bin/psql
/usr/lib/postgresql/9.3/bin/psql
Emettez ensuite un appel direct au psql
localisé utilitaire pour la version :
$ /usr/lib/postgresql/9.3/bin/psql -V
psql (PostgreSQL) 9.3.10
Utiliser SQL
Il est également possible de déterminer la version de Postgres à partir d'une invite SQL Postgres via une simple instruction SQL.
Affichage de la version du serveur
Pour déterminer la version du serveur à l'aide d'une instruction SQL, émettez simplement le SELECT version();
commande :
=# SELECT version();
version
------------------------------------------------------------------------------------------------------
PostgreSQL 9.3.10 on x86_64-unknown-linux-gnu, compiled by gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2, 64-bit
(1 row)
Vous verrez les informations de sortie de la version complète comme dans l'exemple ci-dessus.
Alternativement, vous pouvez interroger la version spécifique du serveur, dans le standard major.minor.patch
format, en utilisant le SHOW
commande :
=# SHOW server_version;
server_version
----------------
9.3.10
(1 row)
SHOW
est utilisé pour afficher les paramètres d'exécution actuels, qui ne sont essentiellement qu'un tableau de name/setting
paires. En émettant le SHOW server_version;
ci-dessus, nous demandons à Postgres de récupérer la valeur actuelle du paramètre de server_version
, qui est bien sûr la version de PostgreSQL en cours d'exécution.
Affichage de la version client
Dans le même esprit, nous pouvons également émettre une courte instruction SQL à partir d'une invite PostgreSQL pour interroger la version client de psql
. Cependant, il convient de noter que cela est purement pratique, car nous demandons simplement à Postgres d'émettre une commande à l'invite du shell, mais depuis dedans l'invite PostgreSQL elle-même.
Ceci est effectué en utilisant le \!
flag lors de la connexion au client, suivi de la déclaration que nous souhaitons émettre :
=# \! psql -V
psql (PostgreSQL) 9.3.10
Tout comme auparavant lorsque nous lancions cette commande directement à partir de l'invite du shell, psql -V
peut renvoyer la version de votre client comme ci-dessus, ou le chemin peut être introuvable.
Avec cela, nous avons couvert quatre façons simples mais efficaces de détecter à la fois les versions serveur et client de Postgres.