PostgreSQL Komut Satırı Tam Referansı
| KOMUT | AÇIKLAMA |
|---|---|
| psql -U postgres -d mydb | Kullanıcı ve veritabanı belirterek bağlan |
| psql -h 192.168.1.10 -p 5432 -U app_user -d prod_db ↳ Uzak sunucuya bağlan | |
| psql "postgresql://user:pass@host:5432/dbname" ↳ Connection string (URI) formatı | |
| psql -U postgres -d mydb -c "SELECT version();" ↳ Tek komut çalıştır ve çık | |
| psql -U postgres -f /path/to/script.sql ↳ SQL dosyası çalıştır | |
| PGPASSWORD=secret psql -U user -d db | Env değişkeni ile şifre |
| psql -U postgres -d mydb -q | Quiet mode (mesajları bastır) |
hostname:port:database:username:password — chmod 600 olmalı.| KOMUT | AÇIKLAMA |
|---|---|
| \set VAR value | Değişken tanımla |
| \unset VAR | Değişkeni sil |
| \set | Tüm değişkenleri listele |
| SELECT :'VAR'; | Değişkeni sorguda kullan |
| \echo :VAR | Değişken değerini yazdır |
| \setenv PGTZ 'UTC' | Ortam değişkeni ayarla |
| \? | Tüm meta komutları listele |
| \h SELECT | SQL komutu sözdizimi yardımı |
| \gx | Son sorguyu expanded modda çalıştır |
| \watch 5 | Son sorguyu 5 sn'de bir tekrarla |
| \errverbose | Son hatayı tüm detaylarıyla göster |
| \l veya \list | Tüm veritabanlarını listele |
| \c mydb | Veritabanı değiştir |
| \conninfo | Aktif bağlantı bilgilerini göster |
| \q | psql'den çık |
| \dt | Geçerli şemadaki tabloları listele |
| \dt public.* | public şemasındaki tüm tablolar |
| \d tablename | Tablo yapısını göster |
| \d+ tablename | Detaylı tablo bilgisi (boyut dahil) |
| \dn | Şemaları listele |
| \dn+ | Şemalar + izinler |
| \dv | View'ları listele |
| \dm | Materialized view'ları listele |
| \di | İndeksleri listele |
| \df | Fonksiyonları listele |
| \ds | Sequence'ları listele |
| \du | Roller ve kullanıcıları listele |
| \dp tablename | Tablo izinlerini göster |
| \z tablename | \dp ile aynı |
+ ekleyerek (ör. \dt+, \df+) boyut, açıklama ve sahip bilgisini görebilirsiniz. \? tüm meta komutları listeler.| KOMUT | AÇIKLAMA |
|---|---|
| \x | Expanded (dikey) modu aç/kapat |
| \x auto | Otomatik genişletilmiş mod |
| \a | Aligned / unaligned mod değiştir |
| \t | Sadece satırları göster (tuple only) |
| \timing | Sorgu süresini ölç ve göster |
| \pset border 2 | Çerçeve kalınlığı ayarla |
| \pset format csv | CSV formatında çıktı |
| \o /tmp/output.txt | Çıktıyı dosyaya yönlendir |
| \o | Dosyaya yönlendirmeyi kapat |
| \H | HTML çıktı modu |
| KOMUT | AÇIKLAMA |
|---|---|
| \e | Sorguyu harici editörde aç ($EDITOR) |
| \ef function_name | Fonksiyon tanımını editörde aç |
| \ev view_name | View tanımını editörde aç |
| \g | Son sorguyu tekrar çalıştır |
| \g /tmp/result.csv | Son sorguyu dosyaya kaydet |
| \i /path/to/file.sql | SQL dosyasını çalıştır |
| \ir relative/path.sql | Göreli yolda SQL dosyası çalıştır |
| \s | Komut geçmişini göster |
| \s /tmp/history.sql | Geçmişi dosyaya kaydet |
| KOMUT | AÇIKLAMA |
|---|---|
| \copy table TO '/tmp/out.csv' CSV HEADER ↳ Tabloyu CSV'ye aktar (istemci taraflı) | |
| \copy table FROM '/tmp/in.csv' CSV HEADER ↳ CSV'den tabloya aktar | |
| \copy (SELECT ...) TO '/tmp/q.csv' CSV HEADER ↳ Sorgu sonucunu CSV'ye aktar | |
| \copy table TO STDOUT | Standart çıktıya aktar |
\copy istemci taraflıdır; COPY sunucu taraflıdır. Dosya izinleri farklıdır.