Kembali ke blog
Januari 27, 2026Panduan

Cara Menginstal PostgreSQL di Server Linux

Panduan lengkap tentang menginstal, mengonfigurasi, dan mengamankan server database PostgreSQL di Ubuntu dan CentOS.

Cara Menginstal PostgreSQL di Server Linux

PostgreSQL adalah sistem manajemen database relasional open-source yang kuat, dikenal karena keandalannya, kekayaan fitur, dan kepatuhan terhadap standar. Panduan ini akan membantu Anda menginstal dan mengonfigurasi PostgreSQL di server Linux Hiddence Anda.

Menginstal PostgreSQL di Ubuntu/Debian

PostgreSQL tersedia di repositori default. Instal versi terbaru:

bash
sudo apt update
sudo apt install postgresql postgresql-contrib -y

# Mulai dan aktifkan PostgreSQL
sudo systemctl start postgresql
sudo systemctl enable postgresql

# Verifikasi instalasi
sudo systemctl status postgresql
psql --version

Menginstal PostgreSQL di RHEL / CentOS / AlmaLinux / Rocky Linux

Untuk distribusi berbasis RHEL, Anda perlu menambahkan repositori PostgreSQL terlebih dahulu:

bash
# Instal repositori PostgreSQL
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# Untuk CentOS 8/Rocky Linux 8, gunakan:
# sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# Instal PostgreSQL
sudo dnf install -y postgresql15-server postgresql15

# Inisialisasi database
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb

# Mulai dan aktifkan PostgreSQL
sudo systemctl start postgresql-15
sudo systemctl enable postgresql-15

# Verifikasi instalasi
sudo systemctl status postgresql-15
psql --version

Memverifikasi Instalasi

bash
# Periksa status PostgreSQL
sudo systemctl status postgresql

# Periksa versi PostgreSQL
psql --version

# Hubungkan ke PostgreSQL (Ubuntu/Debian)
sudo -u postgres psql

# Hubungkan ke PostgreSQL (CentOS/RHEL)
sudo -u postgres psql -d postgres

Mengamankan PostgreSQL

Atur kata sandi untuk pengguna postgres:

bash
# Hubungkan ke PostgreSQL
sudo -u postgres psql

# Atur kata sandi untuk pengguna postgres
ALTER USER postgres PASSWORD 'kata_sandi_kuat_anda';

# Keluar dari PostgreSQL
\q

Membuat Database dan Pengguna

bash
# Hubungkan sebagai pengguna postgres
sudo -u postgres psql

# Buat database
CREATE DATABASE myapp_db;

# Buat pengguna
CREATE USER app_user WITH PASSWORD 'kata_sandi_kuat';

# Berikan hak istimewa
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO app_user;

# Keluar
\q

Mengelola Pengguna

bash
# Hubungkan ke PostgreSQL
sudo -u postgres psql

# Daftar semua pengguna
\du

# Buat pengguna baru
CREATE USER newuser WITH PASSWORD 'kata_sandi';

# Berikan hak istimewa
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO newuser;

# Cabut hak istimewa
REVOKE ALL PRIVILEGES ON DATABASE myapp_db FROM newuser;

# Hapus pengguna
DROP USER newuser;

Mengaktifkan Koneksi Jarak Jauh

Untuk mengizinkan koneksi jarak jauh, edit file konfigurasi PostgreSQL:

bash
# Edit pg_hba.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/pg_hba.conf

# Edit pg_hba.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/pg_hba.conf

# Tambahkan baris:
host    all             all             0.0.0.0/0               md5

# Edit postgresql.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/postgresql.conf

# Edit postgresql.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/postgresql.conf

# Ubah:
listen_addresses = '*'

# Mulai ulang PostgreSQL
sudo systemctl restart postgresql

Perintah PostgreSQL Dasar

bash
# Hubungkan ke database
psql -U app_user -d myapp_db

# Daftar database
\l

# Hubungkan ke database
\c database_name

# Daftar tabel
\dt

# Jelaskan tabel
\d table_name

# Jalankan file SQL
psql -U app_user -d myapp_db -f script.sql

# Cadangkan database
pg_dump -U app_user myapp_db > backup.sql

# Pulihkan database
psql -U app_user -d myapp_db < backup.sql

Tips Berguna

  • Selalu gunakan kata sandi yang kuat untuk pengguna database
  • Batasi akses jarak jauh ke alamat IP tertentu di pg_hba.conf
  • Cadangkan database Anda secara teratur menggunakan pg_dump
  • Pantau log PostgreSQL: /var/log/postgresql/ (Ubuntu) atau /var/lib/pgsql/15/data/log/ (CentOS)
  • Gunakan connection pooling (pgBouncer) untuk aplikasi dengan lalu lintas tinggi
  • Jaga PostgreSQL tetap diperbarui ke versi stabil terbaru untuk patch keamanan