Når administrasjon av PostgreSQL database servere, en av de mest vanlige oppgaver du vil sannsynligvis utføre er en liste over de databaser og deres bord.

PostgreSQL kommer med et interaktivt verktøy kalt psql, som gir deg mulighet til å koble til serveren og kjøre spørringer mot det. Når du bruker psql du kan også dra nytte av sin meta-kommandoer. Disse kommandoene er nyttig for skripting og kommando-linjen-administrasjonen., Alle meta-kommandoer begynner med en unquoted skråstrek, og er også kjent som omvendt skråstrek kommandoer.

Denne veiledningen forklarer hvordan du viser databaser og tabeller i en PostgreSQL server ved hjelp av psql.

Liste Databaser #

Du kan koble til PostgreSQL server ved hjelp av psql kommando som systemet bruker. Avhengig av server konfigurasjon, kan brukeren trenger å skrive inn passordet for å koble til psql terminal., For å få tilgang til psql terminal som brukeren du er pålogget, rett og slett psql.

Når PostgreSQL pakken er installert, en administrativ bruker som heter «postgres» er opprettet. Som standard, dette kan brukeren koble seg til den lokale PostgreSQL server uten et passord.

for Å få tilgang til psql terminal som bruker «postgres», kjører du:

sudo -u postgres psql
sudo – kommandoen lar deg kjøre kommandoer som en annen bruker.,

Fra i psql-terminal utfør \l eller \list meta-kommandoen for å liste alle databaser:

\l

output vil inkludere antall databaser, navnet på hver database, eier koding og tilgang til rettigheter:

PostgreSQL server har tre databaser som er opprettet ved standard, template0, template1, og postgres. De to første er maler som brukes ved opprettelse av nye databaser.,

Hvis du ønsker å få informasjon om størrelser av databaser, standard tablespaces, og beskrivelser bruk \l+ eller \list+. Størrelsen på databasen vises bare hvis den gjeldende brukeren kan koble til det., av alle databaser uten å ha tilgang til psql shell, bruk -c veksle som vist nedenfor:

sudo -u postgres psql -c "\l"

en Annen måte å liste databasene er å bruke følgende SQL-setning:

SELECT datname FROM pg_database;

i Motsetning til \l meta-kommandoen spørringen ovenfor vil vise bare de navnene av databaser:

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

Liste Tabeller #

for Å liste opp alle tabellene i en database som er første, trenger du å koble til ved hjelp av det \c eller \connect meta-kommandoen., Brukeren du er pålogget som til psql-terminal må være i stand til å koble til databasen.,

For eksempel, for å koble til database som heter «odoo» vil du skriv:

\c odoo

Når databasen er slått, bruk \dt meta-kommandoen for å liste opp alle tabellene:

output vil inkludere antall av tabeller, navnet på hvert bord og dens skjemaet, skriver du, og eier:

Hvis databasen er tom, vil effekten ser ut som dette:

No relations found.

for Å få informasjon om størrelser av bordene, og beskrivelser bruk \dt+.,

Konklusjon #

Du har lært hvordan du skal liste PostgreSQL databaser og tabeller ved å bruke psql – kommandoen.