Introduzione
In breve: usa \l o \list per elencare tutti i database in psql. Tuttavia, così vedrai solo le informazioni di base su ciascun database. Se ti servono più dettagli, continua a leggere.
Passo 1: assicurati di avere accesso a ‘psql’
Per prima cosa, assicurati di avere accesso all'utility da riga di comando di PostgreSQL, psql. Per avviare psql, apri il terminale e digita:
psql -U username -d dbname
Sostituisci username con il nome utente del tuo ruolo PostgreSQL e dbname con un database a cui l'utente ha accesso. Se accedi al database PostgreSQL predefinito per la configurazione iniziale, puoi usare postgres come dbname.
Passo 2: elencare i database
Una volta dentro l'interfaccia di psql, elencare tutti i database è semplice. Usa il comando seguente:
\l
oppure
\list
Questi comandi mostrano l'elenco di tutti i database con i rispettivi proprietari, encoding, impostazioni di collation e privilegi di accesso. Ecco un esempio di come potrebbe apparire l'output:
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
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
mydb | dbuser | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
Capire l'output
- Name: il nome del database.
- Owner: il ruolo proprietario del database.
- Encoding: lo schema di codifica dei caratteri usato dal database.
- Collate: l'ordine di collation (cioè come vengono ordinate le stringhe).
- Ctype: la classificazione dei caratteri (ad es. lettera, cifra).
- Access privileges: eventuali privilegi di accesso personalizzati.
Aggiungi un ‘+’ per avere più informazioni
Psql usa + insieme ad altri comandi per mostrare una versione estesa dell'output. È particolarmente utile quando ti servono informazioni più dettagliate o quando l'output predefinito è troppo compatto o troncato.
Per elencare le tabelle esegui \l+ e vedrai informazioni aggiuntive su ciascun database
Questo comando mostra dettagli aggiuntivi su ciascun database, come:
- Size: lo spazio su disco occupato dal database.
- Description: eventuali commenti aggiunti al database.
Elencare ruoli e permessi con ‘\du’
Il comando \du mostra l'elenco dei ruoli nel database PostgreSQL insieme ai privilegi associati.
L'output include colonne come:
- Role name
- Attributes: elenca gli attributi globali come i permessi di login, lo stato di superuser, l'ereditarietà dei ruoli, ecc.
- Member of: gli altri ruoli di cui questo ruolo fa parte.
Elencare le informazioni sui tablespace con ‘\db’
Il comando \db fornisce informazioni sui tablespace, cioè le posizioni di archiviazione in cui i database PostgreSQL salvano i propri file.
Verranno mostrati i dettagli di ciascun tablespace, tra cui:
- Name: il nome del tablespace.
- Owner: il ruolo PostgreSQL proprietario del tablespace.
- Location: il percorso della directory del tablespace sul disco.
- Size: la dimensione del tablespace.
Ottenere informazioni dettagliate sui database da ‘pg_catalog.pg_database’
PostgreSQL salva i metadati di tutti i database nel catalogo di sistema pg_catalog.pg_database. Interrogando questo catalogo puoi ottenere dettagli completi sui database.
Esempio di query SQL
Per ottenere informazioni dettagliate sui database:
SELECT datname AS database_name,
pg_size_pretty(pg_database_size(datname)) AS size,
datallowconn AS allow_connections,
datconnlimit AS connection_limit,
encoding,
datcollate,
datctype
FROM pg_catalog.pg_database;
Capire l'output
- database_name: nome del database.
- size: dimensione del database in formato leggibile.
- allow_connections: indica se il database accetta connessioni (true o false).
- connection_limit: il numero massimo di connessioni simultanee consentite (-1 significa nessun limite).
- encoding: ID numerico dell'encoding del database.
- datcollate: impostazione di collation del database.
- datctype: impostazione del tipo di caratteri del database.
Questa query offre una panoramica delle configurazioni e delle impostazioni del database.
Basta un clic con Beekeeper Studio
Beekeeper Studio elenca tutti i database in un menu a tendina in cima all'interfaccia: puoi passare da un database all'altro in qualsiasi momento.

Riepilogo
In sintesi, elenca tutti i database in psql con \l. Per informazioni più dettagliate, usa gli altri comandi illustrati in questo tutorial.
Beekeeper Studio è una GUI per database gratuita & open source
Il miglior strumento per query & editor SQL che abbia mai usato. Offre tutto ciò che mi serve per gestire il mio database. - ⭐⭐⭐⭐⭐ Mit
Beekeeper Studio è veloce, intuitivo e facile da usare. Beekeeper supporta tantissimi database e funziona alla grande su Windows, Mac e Linux.
Cosa dicono gli utenti di Beekeeper Studio
"Beekeeper Studio ha sostituito completamente il mio vecchio workflow SQL. È veloce, intuitivo e rende di nuovo piacevole lavorare con i database."
"Ho provato tante GUI per database, ma Beekeeper trova l'equilibrio perfetto tra funzionalità e semplicità. Funziona e basta."