PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come visualizzare quale versione di Postgres è in esecuzione

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.