Hier zijn een aantal manieren om een lijst met databases te tonen bij gebruik van psql
met PostgreSQL.
De eerste optie kan worden gebruikt wanneer we al zijn verbonden met PostgreSQL. De tweede optie kan worden gebruikt als we momenteel geen verbinding met Postgres hebben.
De \l
en \list
Commando's
We kunnen ofwel \l
. gebruiken of \list
om een lijst met databases te retourneren.
De syntaxis gaat als volgt:
\l[+] or \list[+] [ pattern ]
De delen tussen vierkante haken []
zijn optioneel.
Dus de snelste/gemakkelijkste manier om een lijst met databases te krijgen is als volgt:
\l
Voorbeeld resultaat:
List of databases +--------------+----------+----------+-------------+-------------+-----------------------+ | Name | Owner | Encoding | Collate | Ctype | Access privileges | +--------------+----------+----------+-------------+-------------+-----------------------+ | barney | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | krankykranes | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | music | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | pagila | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | pethotel | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +| | | | | | | postgres=CTc/postgres | | template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +| | | | | | | postgres=CTc/postgres | +--------------+----------+----------+-------------+-------------+-----------------------+
Voor de duidelijkheid:ik heb dat commando uitgevoerd toen ik al verbonden was met PostgreSQL.
Hetzelfde resultaat kan worden verkregen door \list
. te gebruiken in plaats van \l
.
We kunnen een plusteken toevoegen (+
) om meer informatie over elke tafel terug te geven:
\l+
Voorbeeld resultaat:
List of databases +--------------+----------+----------+-------------+-------------+-----------------------+---------+------------+--------------------------------------------+ | Name | Owner | Encoding | Collate | Ctype | Access privileges | Size | Tablespace | Description | +--------------+----------+----------+-------------+-------------+-----------------------+---------+------------+--------------------------------------------+ | barney | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8473 kB | pg_default | | | krankykranes | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8289 kB | pg_default | | | music | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8225 kB | pg_default | | | pagila | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 16 MB | pg_default | | | pethotel | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8177 kB | pg_default | | | postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8097 kB | pg_default | default administrative connection database | | template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +| 7905 kB | pg_default | unmodifiable empty database | | | | | | | postgres=CTc/postgres | | | | | template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +| 7905 kB | pg_default | default template for new databases | | | | | | | postgres=CTc/postgres | | | | +--------------+----------+----------+-------------+-------------+-----------------------+---------+------------+--------------------------------------------+
Dus we krijgen een paar extra kolommen met informatie over grootte, tabelruimte, enz.
We kunnen een patroon ook gebruiken om alleen die databases te retourneren die overeenkomen met het patroon:
\l krank*
Voorbeeld resultaat:
List of databases +--------------+----------+----------+-------------+-------------+-------------------+ | Name | Owner | Encoding | Collate | Ctype | Access privileges | +--------------+----------+----------+-------------+-------------+-------------------+ | krankykranes | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | +--------------+----------+----------+-------------+-------------+-------------------+
De -l
en --list
Verbindingsopties
Als we momenteel niet verbonden zijn met Postgres, kunnen we verbinding maken met de -l
of --list
verbinding optie.
Wanneer een van deze opties is opgegeven, psql
maakt verbinding met Postgres, geeft alle beschikbare databases weer en sluit af.
Het kan op de volgende manieren worden gebruikt:
-l
--list
Dus in plaats van de backslash te gebruiken, is het een koppelteken of twee koppeltekens (afhankelijk van welke je gebruikt).
Om deze optie te gebruiken, opent u een nieuw terminalvenster of opdrachtprompt en typt u het volgende:
psql -l
Ervan uitgaande dat het in uw PATH-variabele staat, zou dat PostgreSQL moeten starten, alle databases moeten weergeven en vervolgens moeten afsluiten.
Voorbeeld resultaat:
List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges --------------+----------+----------+-------------+-------------+----------------------- barney | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | krankykranes | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | music | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | pagila | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | pethotel | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres
Hetzelfde kan worden toegepast met --list
:
psql --list