Ich bin in einer Unternehmensumgebung (unter Debian Linux) und habe es nicht selbst installiert. Ich greife mit Navicat oder phpPgAdmin auf die Datenbanken zu (wenn das hilft). Ich habe auch keinen Shell-Zugriff auf den Server, auf dem die Datenbank ausgeführt wird.
postgresql
Sehr unregelmäßig
quelle
quelle
psql -c 'SELECT version();'
psql postgres -c 'SELECT version();'
sudo -u postgres psql postgres -c 'SELECT version()' | grep PostgreSQL
sollte Sie über "Rolle 'Benutzername' existiert nicht" bringen.Ich glaube, das ist es, wonach Sie suchen.
Serverversion:
Client-Version:
quelle
pg_config --version
pg_upgradecluster
Dies könnte irreführend sein, z. B. wenn Sie einen Ubuntu-Server aktualisieren und nicht ausführen , zeigt pg_config die neue Version anstelle der noch verwendeten an.pg_config --version
Der Befehl:psql --version
funktioniert nicht, beschwert sich dafür:dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib Referenced from: /usr/local/bin/psql Reason: image not found
Verwenden der CLI:
Serverversion:
Wenn Sie mehr als eine Installation von PostgreSQL haben oder den
postgres: command not found
Fehler " " erhalten:Wenn
locate
dies nicht hilft, versuchen Siefind
:Obwohl
postmaster
auch anstelle von verwendet werden kannpostgres
, ist die Verwendungpostgres
vorzuziehen, dapostmaster
es sich um einen veralteten Alias von handeltpostgres
.Client-Version:
Melden Sie sich entsprechend an
postgres
.Wenn Sie mehr als eine Installation von PostgreSQL haben:
Verwenden von SQL:
Serverversion:
Wenn Sie neugieriger sind, versuchen Sie es
=> SHOW all;
.Client-Version:
Für das, was es wert ist, kann ein Shell-Befehl ausgeführt werden
psql
, um die Client-Version derpsql
ausführbaren Datei im Pfad anzuzeigen. Beachten Sie, dass die Ausführungpsql
möglicherweise von der im Pfad abweichen kann.quelle
SHOW server_version;
ist sehr praktisch in Skripten, um zu vermeiden, dass Sie die lange Zeichenfolge von analysieren müssenSELECT version();
.psql postgres -c "SHOW server_version" -t -A
.-t
Entfernt Header,-A
entfernt Ausrichtungs-Leerzeichen.SHOW server_version_num
insbesondere für das, was für Ungleichheiten praktisch ist.Wenn Sie CLI verwenden und
postgres
Benutzer sind , können Sie Folgendes tun:Mögliche Ausgabe :
quelle
Die akzeptierte Antwort ist großartig, aber wenn Sie programmgesteuert mit der PostgreSQL-Version interagieren müssen, ist es vielleicht besser, Folgendes zu tun:
Die Serverversion wird als Ganzzahl zurückgegeben. So wird die Serverversion in der PostgreSQL-Quelle getestet , z.
Mehr Infos hier und hier .
quelle
Befehl ausführen
Wo
V muss im Kapital sein.
quelle
psql
(Client-) Version, nicht die Version des Postgres- Servers .Führen Sie in der Shell psql.exe aus
quelle
Eine einfache Möglichkeit besteht darin, die Version durch Eingabe
psql --version
des Terminals zu überprüfenquelle
Die Verwendung
pgadmin4
kann durch Doppelklicken auf Server> Servername_Hier> Registerkarte Eigenschaften> Version angezeigt werden:Version 3.5:
Version 4.1, 4.5:
quelle
Der Befehl pg_config gibt das Verzeichnis an, in dem die PostgreSQL-Programme installiert sind (--bindir), den Speicherort von C include-Dateien (--includedir) und Objektcodebibliotheken (--libdir) sowie die Version von PostgreSQL (--version). ::
quelle
In meinem Fall
Hoffe es wird jemandem helfen
quelle
Wenn Sie Shell-Zugriff auf den Server haben (in der Frage wird erwähnt, dass op nicht vorhanden ist, aber falls vorhanden), auf einem Debian / Ubuntu-System
welches die installierte Version ausgeben wird,
Dabei
Installed: <version>
ist die installierte Postgres-Paketversion.quelle
$ yum list
, dass bestimmte Postgresql-Pakete installiert wurden.Verwenden Sie eine
VERSION
spezielle Variablequelle
Ich weiß nicht, wie zuverlässig dies ist, aber Sie können zwei Versions-Token vollautomatisch erhalten:
So können Sie Pfade zu Binärdateien erstellen:
Ersetzen Sie einfach 9.2 durch diesen Befehl.
quelle
psql --version
Gibt die Version despsql
Clients zurück, nicht die Version des Postgres-ServersFür die aktuelle Version von PgAdmin: 4.16 zum Zeitpunkt des Schreibens.
Siehe Screenshot unten:
quelle
Wenn Sie
Select version()
mit Memo zurückkehren, verwenden Sie den folgenden Befehl:oder
quelle
select version()::varchar(100);
arbeitete für mich, war aber das gleiche wieversion()