Overzicht
psql is een krachtige tool voor interactie met PostgreSQL-databases. Naast SQL-commando's biedt het ook diverse metacommandos (backslash-commando's) die databasebeheertaken vereenvoudigen.
Belangrijkste functies
- SQL-queries uitvoeren
- Database- en tabelbeheer
- Gebruikers- en permissieconfiguratie
- Scriptbestanden uitvoeren
- Interactieve shell-omgeving bieden
Belangrijkste opties
Dit zijn de belangrijkste opties die u kunt gebruiken op de psql command-line.
Verbindingsopties
Commando-uitvoeringsopties
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`psql` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Dit zijn diverse voorbeelden van het gebruik van het psql commando.
Standaard databaseverbinding
psql
Maakt verbinding met de standaarddatabase met de standaardgebruiker (huidige systeemgebruiker).
Verbinding maken met een specifieke database en gebruiker
psql -U myuser -d mydb -W
Maakt verbinding met de database 'mydb' als gebruiker 'myuser'. Er wordt om een wachtwoord gevraagd.
Verbinding maken met een externe server
psql -h db.example.com -p 5432 -U postgres
Maakt verbinding met poort 5432 van de externe host (db.example.com) als gebruiker 'postgres'.
Een enkel SQL-commando uitvoeren
psql -U postgres -d postgres -c "SELECT version();"
Voert een SQL-commando uit om de databaseversie op te vragen en sluit psql af.
SQL-scriptbestand uitvoeren
psql -U postgres -d mydb -f script.sql
Voert de SQL-commando's uit die in het bestand script.sql staan.
Database lijst opvragen
psql -l
Toont de lijst van alle databases op de huidige PostgreSQL-server.
Installatie
psql wordt geleverd als onderdeel van het PostgreSQL client-pakket. Op de meeste Linux-distributies kunt u de clienttools apart installeren zonder de PostgreSQL-server te installeren.
Debian/Ubuntu
sudo apt update
sudo apt install postgresql-client
Installeert de PostgreSQL clienttools met de apt-pakketbeheerder.
RHEL/CentOS/Fedora
sudo dnf install postgresql
Installeert de PostgreSQL clienttools met de yum- of dnf-pakketbeheerder.
Tips & Aandachtspunten
Dit zijn tips en aandachtspunten voor efficiënter gebruik van psql.
Belangrijkste psql metacommandos
U kunt diverse taken uitvoeren in de psql-shell door commando's te gebruiken die beginnen met een backslash (\).
- \l: Toont de lijst van alle databases
- \dt: Toont de lijst van tabellen in de huidige database
- \du: Toont de lijst van alle gebruikers (rollen)
- \d <table>: Toont de schema-informatie van een specifieke tabel
- \q: Sluit psql af
- \?: Toont hulp voor alle metacommandos
Gebruik van omgevingsvariabelen
U kunt veelgebruikte verbindingsinformatie instellen als omgevingsvariabelen om psql-commando's te vereenvoudigen.
- PGHOST: Hostnaam of IP-adres
- PGPORT: Poortnummer
- PGUSER: Gebruikersnaam
- PGDATABASE: Databasenaam
- PGPASSWORD: Wachtwoord (niet aanbevolen vanwege beveiliging, gebruik .pgpass-bestand aanbevolen)
.pgpass-bestand
Om wachtwoorden veilig op te slaan zonder ze bloot te stellen in de command-line of omgevingsvariabelen, is het aan te raden om het bestand ~/.pgpass te gebruiken. Dit bestand slaat wachtwoorden op voor specifieke hosts, poorten, databases en gebruikersnamen, zodat psql automatisch kan authenticeren.