Auflisten und Wechseln von Datenbanken in PostgreSQL
Auflisten und Umschalten von Datenbanken in PostgreSQL
PostgreSQL, ein leistungsstarkes objektrelationales Open-Source-Datenbanksystem, bietet eine Vielzahl von Werkzeugen und Funktionen für die effiziente Verwaltung von Datenbanken. Unabhängig davon, ob Sie ein Datenbankadministrator oder ein Backend-Entwickler sind, ist das Wissen, wie man Datenbanken auflistet und zwischen ihnen wechselt, grundlegend für die Navigation in Umgebungen mit mehreren Datenbanken.
1. Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass:
PostgreSQL auf Ihrem System installiert ist(psql ist zugänglich).
Sie haben die entsprechenden Berechtigungen (z.B. Superuser oder Rolle mit Verbindungsrechten).
Sie können sich beim PostgreSQL-Server mit einem gültigen Benutzer authentifizieren.
2. Auflisten von Datenbanken in PostgreSQL
🔍 Methode 1: Verwendung des Meta-Befehls psql
Starten Sie das interaktive Terminal psql und führen Sie es aus:
\lOder die erweiterte Form:
\listDies gibt eine Liste aller Datenbanken zurück:
Name
Owner
Encoding
Collation
Ctype
Access privileges
Methode 2: SQL-Abfrage verwenden
Alternativ können Sie auch diese SQL-Anweisung ausführen:
SELECT datname FROM pg_database WHERE datistemplate = false;Diese Abfrage schließt Vorlagedatenbanken (template0, template1) aus und zeigt vom Benutzer erstellte Datenbanken an.
🛠️ Methode 3: Befehlszeilen-Shell
Außerhalb von psql, von Ihrem Terminal aus:
psql -U postgres -c "\l"Sie können auch psql -l verwenden:
psql -l3. Umschalten von Datenbanken
Im Gegensatz zu einigen anderen RDBMS (z.B. MySQL) unterstützt PostgreSQL nicht den Wechsel von Datenbanken innerhalb der gleichen Sitzung mit einem Befehl wie USE dbname;.
Warum ist das so?
PostgreSQL stellt zur Anmeldezeit eine Verbindung zu einer bestimmten Datenbank her. Um auf eine andere Datenbank zuzugreifen, müssen Sie die Verbindung trennen und neu aufbauen.
Empfohlene Vorgehensweise:
Beenden Sie die aktuelle Sitzung und verbinden Sie sich erneut mit der gewünschten Datenbank:
\q -- Beenden der aktuellen psql-SitzungDanach:
psql -U username -d target_databaseOder direkt:
Beispiel:
Stellen Sie sicher, dass die Datei die richtigen Berechtigungen hat:
c. Umgebungsvariablen verwenden
Exportieren Sie die Standard-DB und den Benutzer für einen schnelleren Wechsel:


