Při podávání PostgreSQL databázových serverů, jedním z nejčastějších úkolů, budete pravděpodobně provádět je seznam databází a jejich tabulek.

PostgreSQL je dodáván s interaktivní nástroj s názvem psql, který umožňuje připojení k serveru a spustit dotazy proti němu. Při použití psql můžete také využít jeho meta-příkazy. Tyto příkazy jsou užitečné pro skriptování a správu příkazového řádku., Všechny meta-příkazy začínají nekótovaným zpětným lomítkem a jsou také známé jako příkazy zpětného lomítka.

tento tutoriál vysvětluje, jak zobrazit databáze a tabulky na serveru PostgreSQL pomocí psql.

Výpis databází #

k serveru PostgreSQL se můžete připojit pomocí příkazu psql jako každý uživatel systému. V závislosti na konfiguraci serveru může uživatel potřebovat zadat své heslo pro připojení k terminálu psql., Pro přístup k terminálupsql jako aktuálně přihlášený uživatel jednoduše zadejte psql.

když je nainstalován balíček PostgreSQL, vytvoří se administrativní uživatel s názvem „postgres“. Ve výchozím nastavení se tento uživatel může připojit k lokálnímu serveru PostgreSQL bez hesla.

pro přístup Do psql terminálu jako uživatel „postgres“, spustit:

sudo -u postgres psql
sudo příkaz umožňuje spouštět příkazy jako jiný uživatel.,

v psql terminálu spustit \l nebo \list meta-příkaz k seznamu všech databází:

\l

výstup bude obsahovat počet databází, název každé databáze, její majitel, kódování a přístupových práv:

PostgreSQL server má tři databáze vytvořené ve výchozím nastavení, template0, template1, a postgres. První dva jsou šablony, které se používají při vytváření nových databází.,

Pokud chcete získat informace o velikosti databáze, default tablespaces, a popisy použití \l+ nebo \list+. Velikost databáze se zobrazí pouze v případě, že se k ní může připojit Aktuální uživatel., všech databází bez přístupu k psql shell, použít -c spínače, jak je uvedeno níže:

sudo -u postgres psql -c "\l"

Další způsob, jak se seznam databází je použít následující SQL příkaz:

SELECT datname FROM pg_database;

na Rozdíl od \l meta-příkaz dotazu výše se zobrazí pouze jména z databáze:

 datname ----------- postgres odoo template1 template0(4 rows)

Výpis Tabulky #

seznam všech tabulek dané databáze první, musíte se k němu připojit pomocí \c nebo \connect meta-příkaz., Uživatel, kterého jste přihlášeni, pokud jde o terminál psql, se musí být schopen připojit k databázi.,

například, pro připojení k databázi s názvem „odoo“, zadali byste:

\c odoo

Jakmile je databáze je zapnutý, použijte \dt meta-příkaz k seznamu všech tabulek databáze:

výstup bude obsahovat číslo tabulky, název každého stolu a jeho schéma, typ a majitel:

Pokud je databáze prázdná, bude výstup vypadat takto:

No relations found.

získat informace o velikosti tabulky a popisy použití \dt+.,

závěr #

naučili jste se seznam PostgreSQL databází a tabulek pomocí příkazu psql.