Pengantar
Artikel ini memperkenalkan cheat sheet PostgreSQL yang terdiri dari perintah dan query yang sering digunakan sebagai referensi cepat saat mengoperasikan PostgreSQL.
Perintah yang Digunakan di Terminal
Saya menjelaskan perintah yang biasa digunakan dalam terminal (atau antarmuka baris perintah) untuk berinteraksi dengan database PostgreSQL.
Memulai Server
Untuk memulai server PostgreSQL, gunakan perintah pg_ctl start
diikuti dengan opsi -D
untuk menentukan direktori tempat data disimpan.
$ pg_ctl start -D /usr/local/var/postgres
Menghentikan Server
Untuk menghentikan server PostgreSQL, gunakan perintah pg_ctl stop
, lagi-lagi diikuti dengan opsi -D
untuk menentukan direktori data yang akan dihentikan.
$ pg_ctl stop -D /usr/local/var/postgres
Memverifikasi Apakah Server Berjalan
Untuk memverifikasi apakah server PostgreSQL sedang berjalan, Anda dapat menggunakan perintah ps aux | grep postgres
yang akan menampilkan daftar proses saat ini yang terkait dengan PostgreSQL.
$ ps aux | grep postgres
Koneksi ke Database
Untuk terhubung ke database PostgreSQL, gunakan perintah psql dengan opsi -d
(nama database), -U
(nama pengguna), dan -h
(nama host). Jika opsi-opsi ini tidak ditentukan, maka nilai defaultnya adalah nama pengguna saat login dan localhost
.
$ psql -d database -U user -h host
Menampilkan Daftar Database
Untuk menampilkan daftar database, gunakan perintah psql -l
:
$ psql -l
Menampilkan Versi PostgreSQL
Untuk memeriksa versi PostgreSQL yang sedang digunakan, jalankan perintah psql -V
:
$ psql -V
Perintah PostgreSQL
Saya akan fokus pada perintah yang paling sering digunakan dalam antarmuka baris perintah PostgreSQL.
Putuskan Koneksi
Jika Anda ingin memutuskan koneksi dari antarmuka PostgreSQL, gunakan perintah \q
atau \!
.
postgres=# \q
postgres=# \!
Pengguna
Manajemen pengguna adalah bagian penting dari administrasi database. Di sini, kita akan melihat perintah terkait operasi pengguna.
Untuk menampilkan daftar pengguna di PostgreSQL, gunakan perintah \du
.
postgres=# \du
PostgreSQL mengelola izin akses database menggunakan konsep peran. Untuk menampilkan semua peran, Anda dapat menggunakan kueri berikut.
postgres=# SELECT rolname FROM pg_roles;
Database
Operasi database adalah tugas rutin dalam PostgreSQL. Di sini, kita akan melihat perintah terkait operasi ini.
Untuk menampilkan informasi tentang database yang terhubung, gunakan perintah \conninfo
.
postgres=# \conninfo
Untuk menampilkan semua database, gunakan perintah \l
.
postgres=# \l
Untuk terhubung ke database yang berbeda, gunakan perintah \c <nama_database>
.
postgres=# \c <nama_database>
Untuk menampilkan database yang sedang terhubung, gunakan perintah SELECT current_database();
.
postgres=# SELECT current_database();
Untuk membuat database baru, gunakan perintah CREATE DATABASE <nama_database>;
.
postgres=# CREATE DATABASE <database_name>;
Tabel
Operasi terkait tabel merupakan inti dari pengelolaan database PostgreSQL.
Untuk mendapatkan deskripsi tabel, termasuk nama kolom dan tipe data, gunakan perintah \d <tabel>
.
postgres=# \d <tabel>
Untuk mendapatkan deskripsi detail tabel, termasuk statistik penyimpanan dan komentar pada kolom, gunakan perintah \d+ <tabel>
.
postgres=# \d+ <tabel>
Untuk menampilkan semua tabel dari skema saat ini, gunakan perintah \dt
.
postgres=# \dt
Untuk menampilkan tabel dari semua skema, gunakan perintah \dt *.*
.
postgres=# \dt *.*
Untuk menampilkan tabel dari skema tertentu, gunakan perintah \dt <skema>.*
.
postgres=# \dt <skema>.*
Untuk menampilkan hak akses dari semua tabel, gunakan perintah \dp
.
postgres=# \dp
Skema
Skema adalah ruang nama: ini berisi objek-objek bernama (tabel, jenis data, fungsi, dan operator) yang namanya dapat sama dengan objek lain yang ada di skema lain. PostgreSQL menggunakan skema untuk membantu beberapa pengguna berbagi satu database tanpa saling mengganggu.
Untuk menampilkan semua skema dalam database saat ini, gunakan perintah \dn
.
postgres=# \dn
View
View dapat dianggap sebagai tabel virtual, secara mendasar adalah kueri yang disimpan, yang mengambil output dari kueri tersebut dan memperlakukannya sebagai tabel. Dengan demikian, view adalah objek yang berasal dari satu atau beberapa tabel dasar yang ada.
Untuk menampilkan semua view dalam database saat ini, gunakan perintah \dv
.
postgres=# \dv
Impor/Ekspor CSV
PostgreSQL menyediakan mekanisme yang kuat untuk mengimpor dan mengekspor data dalam berbagai format seperti CSV.
Untuk mengekspor tabel ke file CSV, Anda dapat menggunakan perintah \copy
. Berikut beberapa contoh:
postgres=# \copy table TO '<path>' CSV
postgres=# \copy table(col1,col1) TO '<path>' CSV
postgres=# \copy (SELECT...) TO '<path>' CSV
Untuk mengimpor data dari file CSV ke tabel, Anda juga dapat menggunakan perintah \copy
. Berikut beberapa contoh:
postgres=# \copy table FROM '<path>' CSV
postgres=# \copy table(col1,col1) FROM '<path>' CSV
Riwayat
Mencatat perintah yang telah dieksekusi sebelumnya dapat sangat berguna untuk mengulangi tugas atau memahami tindakan yang dilakukan dalam sesi. Di PostgreSQL, Anda dapat menggunakan perintah \s
untuk menampilkan riwayat baris perintah.
postgres=# \s
Jika Anda menggunakan \s
diikuti dengan nama file, riwayat perintah akan ditulis ke file tersebut.