Materi belajar database tidak akan lengkap kalau kita hanya membaca teori; kita membutuhkan server PostgreSQL yang benar-benar berjalan di komputer sendiri. PostgreSQL tersedia gratis untuk Linux, macOS, dan Windows, tetapi cara memasangnya berbeda di tiap sistem operasi. Pada chapter ini kita akan memasang PostgreSQL 17, mengenal perbedaan rilis major dan minor, lalu memverifikasi bahwa client dan server berfungsi dengan query pertama.
Memilih Versi PostgreSQL #
Sebelum mengunduh, ada baiknya kita memahami cara PostgreSQL memberi nomor versinya. PostgreSQL menerbitkan satu rilis major baru setiap tahun — PostgreSQL 17, PostgreSQL 18, begitu seterusnya — dan rilis minor berkala untuk perbaikan bug (misalnya 17.11). Course ini menguji seluruh contoh kodenya pada PostgreSQL 17, versi yang stabil dan masih sangat banyak dipakai di produksi, jadi sebaiknya kita memasang major 17 atau lebih baru.
| Jenis rilis | Isi perubahan | Contoh | Kapan dipilih |
|---|---|---|---|
| Major | Fitur baru, perubahan perilaku, peningkatan performa | 17, 18 | Sekali di awal proyek; upgrade butuh perencanaan |
| Minor | Perbaikan bug dan keamanan, tanpa fitur baru | 17.11 | Selalu gunakan minor terbaru dari major yang sama |
Pembaruan minor aman dijalankan tanpa mengubah aplikasi, karena komunitas PostgreSQL menjaga kompatibilitasnya. Karena itu versi minor yang tampil di komputer kita boleh saja lebih tinggi daripada 17.11 yang dipakai saat materi ini diuji.
Memasang PostgreSQL #
Paket instalasi PostgreSQL selalu membawa dua kelompok komponen sekaligus: server (daemon yang menyimpan dan memproses data) dan client, termasuk psql yang akan menjadi alat utama kita sepanjang course ini. Pilih subbab sesuai sistem operasi yang Anda pakai.
1. Ubuntu / Debian #
Distribusi Linux berbasis Debian menyediakan PostgreSQL di repositori resmi lewat paket postgresql:
sudo apt update
sudo apt install postgresqlProses instalasi otomatis melakukan tiga hal: memasang server dan client, membuat cluster pertama beserta data directory-nya, lalu menjalankan layanan postgresql di background. Instalasi ini juga membuat role superuser bernama postgres dan satu database bernama postgres. Versi yang dipasang bergantung pada rilis distribusi; kalau kita butuh versi yang lebih baru dari milik repositori, komunitas PostgreSQL menyediakan repositori paket resmi (PGDG) untuk sejumlah distribusi Linux.
Setelah instalasi selesai, layanan bisa diperiksa dengan perintah berikut:
systemctl status postgresqlUntuk masuk ke psql sebagai superuser bawaan, pengguna Ubuntu cukup menjalankan sudo -u postgres psql karena metode autentikasi bawaannya memetakan user sistem operasi ke role database dengan nama yang sama.
2. macOS #
Cara paling umum memasang PostgreSQL di macOS adalah lewat Homebrew. Jika Homebrew belum terpasang, pasang dulu dari situs resminya, lalu jalankan:
brew update
brew install postgresql@17
brew services start postgresql@17Formula postgresql@17 memasang PostgreSQL 17 tanpa mengganggu versi lain yang mungkin sudah ada di komputer. Perintah brew services start menjalankan server secara otomatis di background dan akan dinyalakan ulang setiap komputer dinyalakan. Berbeda dengan Linux, instalasi Homebrew tidak membuat role postgres; superuser bawaannya adalah role dengan nama yang sama dengan akun macOS kita, jadi cukup jalankan psql polos untuk masuk.
Formula berakhiran @17 bersifat keg-only, artinya perintah psql-nya tidak otomatis berada di PATH. Jika terminal menampilkan command not found setelah instalasi, ikuti petunjuk caveats yang Homebrew tampilkan di akhir proses instalasi — biasanya berupa satu baris export PATH yang perlu ditambahkan ke berkas profil shell kita.
3. Windows #
Untuk Windows, paket instalasi grafis resmi dibundel oleh EDB (EnterpriseDB), salah satu perusahaan kontributor PostgreSQL. Prosesnya berlangsung lewat wizard dengan langkah-langkah berikut:
- Unduh installer PostgreSQL 17 untuk Windows dari halaman unduhan resmi PostgreSQL (tautan Windows di halaman itu mengarah ke situs EDB).
- Jalankan berkas installer yang telah diunduh, lalu pilih direktori instalasi.
- Pilih komponen yang ingin dipasang: PostgreSQL Server, pgAdmin 4 (antarmuka grafis yang kita bahas di chapter Menggunakan pgAdmin), Stack Builder, dan Command Line Tools yang berisi
psql. - Tentukan lokasi data directory — biarkan nilai bawaannya kecuali ada alasan khusus.
- Buat kata sandi untuk superuser
postgres. Kotak isian ini hanya muncul sekali saat instalasi. - Konfirmasi port (bawaannya
5432) dan locale, lalu selesaikan wizard.
Setelah proses selesai, PostgreSQL berjalan sebagai layanan Windows dan dapat diakses melalui menu SQL Shell (psql) di Start Menu. Installer juga menambahkan direktori bin ke PATH, sehingga psql bisa dipanggil dari Command Prompt atau PowerShell.
Menjalankan dan Menghentikan Layanan #
PostgreSQL server berjalan sebagai layanan background, bukan program yang kita buka seperti aplikasi biasa. Tabel berikut merangkum cara mengelolanya di tiap sistem operasi:
| Sistem operasi | Menyalakan | Mematikan | Memeriksa status |
|---|---|---|---|
| Ubuntu / Debian | sudo systemctl start postgresql | sudo systemctl stop postgresql | systemctl status postgresql |
| macOS | brew services start postgresql@17 | brew services stop postgresql@17 | brew services list |
| Windows | Services → postgresql-x64-17 → Start | Services → Stop | Services → Status kolom |
Sebagai pemeriksaan cepat tanpa perlu login, PostgreSQL juga menyediakan perintah pg_isready yang hanya melaporkan apakah server menerima koneksi atau tidak. Pada chapter Konfigurasi Koneksi kita akan memakainya di dalam skrip.
Memverifikasi Instalasi #
Instalasi yang berhasil perlu dibuktikan dua arah: perintah psql harus dikenali oleh shell (artinya client terpasang), dan server harus bisa menjawab query (artinya server hidup). Skrip berikut memeriksa keduanya:
# Versi client psql yang terpasang di komputer kita
psql --version
# Versi server yang sedang berjalan saat ini
psql -X -c "SHOW server_version;"Output yang Dihasilkan:
psql (PostgreSQL) 17.11 (Debian 17.11-0+deb13u1)
server_version
--------------------------------
17.11 (Debian 17.11-0+deb13u1)
(1 row)Mari kita bedah kedua perintah di skrip tersebut:
psql --version: memeriksa versi program client tanpa membuka koneksi ke server sama sekali, jadi perintah ini tetap berhasil walau server sedang mati.psql -X -c "SHOW server_version;": membuka koneksi sungguhan lalu menjalankan satu perintah SQL. Flag-Xmencegah psql membaca file konfigurasi pribadi pengguna, sedangkan-cmenjalankan perintah lalu keluar — pola yang akan sering kita pakai di chapter Menggunakan psql.
Langkah verifikasi terakhir adalah bertanya langsung kepada server: function version() melaporkan versi lengkap beserta sistem operasi dan kompiler yang dipakai membangunnya, sementara current_user memperlihatkan role yang kita pakai untuk masuk:
SELECT version();
SELECT current_user;Output yang Dihasilkan:
version
---------------------------------------------------------------------------------------------------------------------
PostgreSQL 17.11 (Debian 17.11-0+deb13u1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit
(1 row)
current_user
--------------
postgres
(1 row)Jika kedua pemeriksaan ini berhasil, kita sudah memiliki server yang hidup dan alat untuk mengajaknya bicara. Server tersebut membawa puluhan pengaturan yang mengatur perilakunya — mulai dari memori per query hingga jumlah koneksi yang ditampung — dan itulah bahan chapter berikutnya: Konfigurasi PostgreSQL Server.
Referensi #
Berkas Sumber
Berkas pendukung halaman ini dapat diunduh dan dijalankan langsung sesuai penjelasan di atas.
cek-versi.sh
Unduh berkas# Versi client psql yang terpasang di komputer kita
psql --version
# Versi server yang sedang berjalan saat ini
psql -X -c "SHOW server_version;"
verifikasi.sql
Unduh berkasSELECT version();
SELECT current_user;