Android

Slik viser du postgresql-databaser og tabeller ved bruk av psql

PostgreSQL Tutorial For Beginners | Learn PostgreSQL | Introduction to PostgreSQL | Edureka

PostgreSQL Tutorial For Beginners | Learn PostgreSQL | Introduction to PostgreSQL | Edureka

Innholdsfortegnelse:

Anonim

Når du administrerer PostgreSQL-databaseservere, er en av de vanligste oppgavene du sannsynligvis vil utføre, å liste opp databasene og tabellene deres.

PostgreSQL kommer med et interaktivt verktøy kalt psql som lar deg koble til serveren og kjøre spørsmål mot den. Når du bruker psql kan du også dra nytte av metakommandoene. Disse kommandoene er nyttige for skripting og kommandolinjeadministrasjon. Alle metakommandoer begynner med et ikke-sitert tilbakeskritt og er også kjent som backslash-kommandoer.

Denne opplæringen forklarer hvordan du viser databaser og tabeller i en PostgreSQL-server ved bruk av psql .

Liste over databaser

Du kan koble til PostgreSQL-serveren ved å bruke psql kommandoen som en hvilken som helst systembruker. Avhengig av serverkonfigurasjonen kan brukeren trenge å oppgi passordet for å koble seg til psql-terminalen. Skriv inn psql for å få tilgang til psql-terminalen som brukeren du er logget inn.

Når PostgreSQL-pakken er installert, opprettes en administrativ bruker som heter “postgres”. Som standard kan denne brukeren koble seg til den lokale PostgreSQL-serveren uten passord.

For å få tilgang til psql terminalen som bruker “postgres”, kjør:

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

Fra psql-terminalen kjør \l eller \list metakommando for å liste alle databaser:

\l

Utgangen vil inneholde antall databaser, navn på hver database, dens eier, koding og tilgangsrettigheter:

List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+----------+----------+---------+---------+----------------------- odoo | odoo | UTF8 | C | C.UTF-8 | postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8 | template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres (4 rows)

PostgreSQL-server har tre databaser opprettet som standard, mal0, mal1 og postgres. De to første er maler som brukes når du oppretter nye databaser.

For å få en liste over alle databaser uten å få tilgang til psql-shell bruker du -c bryteren som vist nedenfor:

sudo -u postgres psql -c "\l"

En annen måte å liste opp databasene på er å bruke følgende SQL-setning:

SELECT datname FROM pg_database;

I motsetning til \l metakommandoen vil spørringen ovenfor bare vise navnene på databasene:

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

Oppføringstabeller

For å liste alle tabellene i en bestemt database først, må du koble til den ved å bruke \c eller \connect metakommandoen. Brukeren du er logget inn på psql-terminalen, må kunne koble seg til databasen.

For å koble til databasen "odoo", skriver du for eksempel:

\c odoo

Når databasen er byttet, bruker du \dt metakommandoen for å liste opp alle databasetabeller:

Utgangen vil inneholde antall tabeller, navnet på hver tabell og skjemaet, typen og eieren:

List of relations Schema | Name | Type | Owner --------+-----------------------------------------------------+-------+------- public | base_import_import | table | odoo public | base_import_mapping | table | odoo public | base_import_tests_models_char | table | odoo… public | web_editor_converter_test_sub | table | odoo public | web_tour_tour | table | odoo public | wizard_ir_model_menu_create | table | odoo (107 rows)

Hvis databasen er tom, vil utskriften se slik ut:

No relations found.

For å få informasjon om størrelsen på tabellene og beskrivelser, bruk \dt+ .

Konklusjon

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

Legg gjerne igjen en kommentar hvis du har spørsmål.

PostgreSQL