Visualizzare quale versione (o versioni) di PostgreSQL è attiva sul tuo sistema è un processo ragionevolmente semplice, ma è possibile utilizzare una serie di metodi. In questo tutorial esploreremo brevemente quattro metodi per trovare la tua versione di PostgreSQL, incluse le versioni client e server.
Nota:come al solito quando lavori con PostgreSQL, assicurati di aver effettuato l'accesso al prompt della shell da un utente non root con privilegi Postgres affinché questi comandi funzionino correttamente.
Utilizzo della riga di comando della shell
Sia l'installazione del server che quella del client Postgres possono essere interrogate utilizzando le rispettive utilità della riga di comando.
Visualizzazione della versione del server
Per trovare la versione del server Postgres dalla riga di comando della shell, emetti semplicemente un postgres
comando con il -V
flag (per versione):
$ postgres -V
postgres (PostgreSQL) 9.3.10
Nel caso in cui il postgres
comando non viene trovato, potrebbe essere necessario individuare la directory dell'utilità. Questo può essere fatto emettendo il locate bin/postgres
comando:
$ locate bin/postgres
/usr/lib/postgresql/9.3/bin/postgres
Ora con il percorso diretto al postgres
utilità, puoi chiamarla con il -V
flag come illustrato sopra:
$ /usr/lib/postgresql/9.3/bin/postgres -V
postgres (PostgreSQL) 9.3.10
Visualizzazione della versione client
Per visualizzare la versione del client, di nuovo è sufficiente passare il -V
flag su psql
comando di utilità client:
$ psql -V
psql (PostgreSQL) 9.3.10
Simile a quanto sopra, se non riesci a trovare l'utilità – o hai più installazioni di PostgreSQL su quella macchina – puoi facilmente individuare psql
:
$ locate bin/psql
/usr/bin/psql
/usr/lib/postgresql/9.3/bin/psql
Quindi invia una chiamata diretta al psql
individuato utilità per la versione:
$ /usr/lib/postgresql/9.3/bin/psql -V
psql (PostgreSQL) 9.3.10
Utilizzo di SQL
È anche possibile determinare la versione di Postgres da un prompt SQL di Postgres tramite una semplice istruzione SQL.
Visualizzazione della versione del server
Per determinare la versione del server utilizzando un'istruzione SQL, emettere semplicemente SELECT version();
comando:
=# 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)
Vedrai le informazioni sull'output della versione completa come mostrato nell'esempio sopra.
In alternativa, puoi richiedere la versione specifica del server, nello standard major.minor.patch
formato, utilizzando il SHOW
comando:
=# SHOW server_version;
server_version
----------------
9.3.10
(1 row)
SHOW
viene utilizzato per visualizzare i parametri di runtime correnti, che sono essenzialmente solo una tabella di name/setting
coppie. Emettendo il SHOW server_version;
dichiarazione precedente, chiediamo a Postgres di recuperare il valore del parametro corrente di server_version
, che ovviamente è la versione di PostgreSQL attualmente in esecuzione.
Visualizzazione della versione client
Allo stesso modo, possiamo anche emettere una breve istruzione SQL da un prompt di PostgreSQL per interrogare la versione client di psql
. Tuttavia, vale la pena notare che questo è puramente per comodità, poiché stiamo effettivamente chiedendo a Postgres di emettere un comando sul prompt della shell, ma da dentro il prompt di PostgreSQL stesso.
Questo viene eseguito utilizzando il \!
flag durante la connessione al cliente, seguito dalla dichiarazione che desideriamo rilasciare:
=# \! psql -V
psql (PostgreSQL) 9.3.10
Proprio come prima quando eseguivamo questo comando direttamente dal prompt della shell, psql -V
potrebbe restituire la versione del tuo client come sopra o il percorso potrebbe non essere trovato.
Con ciò abbiamo coperto quattro modi semplici ma efficaci per rilevare sia la versione server che quella client di Postgres.