Skip to main content

Step-by-Step Install PostgreSQL 18.3 di Ubuntu 24.04


1. Update sistem

Selalu mulai dengan update paket.

sudo apt update && sudo apt upgrade -y

2. Install dependency

Beberapa tool diperlukan untuk menambahkan repository.

sudo apt install -y curl ca-certificates gnupg lsb-release

3. Import PostgreSQL GPG Key

Tambahkan key resmi PostgreSQL.

curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc \
| sudo gpg --dearmor -o /usr/share/keyrings/postgresql.gpg

4. Tambahkan PostgreSQL Repository

echo "deb [signed-by=/usr/share/keyrings/postgresql.gpg] http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" \
| sudo tee /etc/apt/sources.list.d/postgresql.list

Untuk Ubuntu 24.04, variable $(lsb_release -cs) akan menghasilkan:

noble-pgdg

5. Update repository

sudo apt update

Cek apakah PostgreSQL 18 tersedia

apt search postgresql-18

6. Install PostgreSQL 18

sudo apt install -y postgresql-18

Ini akan otomatis menginstall:

  • postgresql-18

  • postgresql-client-18

  • postgresql-common


7. Cek service PostgreSQL

sudo systemctl status postgresql

Harusnya status:

active (running)

Jika belum:

sudo systemctl enable postgresql
sudo systemctl start postgresql

8. Cek versi PostgreSQL

psql --version

Output seharusnya:

psql (PostgreSQL) 18.3

9. Login ke PostgreSQL

Switch ke user postgres:

sudo -i -u postgres

Masuk ke CLI database:

psql

Prompt akan berubah menjadi:

postgres=#

10. Test database

Buat database test:

CREATE DATABASE testdb;

Cek:

\l

Keluar dari psql:

\q

11. Konfigurasi listen address (opsional untuk remote)

Edit file konfigurasi:

sudo nano /etc/postgresql/18/main/postgresql.conf

Cari:

#listen_addresses = 'localhost'

Ubah menjadi:

listen_addresses = '*'

12. Konfigurasi client authentication

Edit file:

sudo nano /etc/postgresql/18/main/pg_hba.conf

Tambahkan:

host    all             all             0.0.0.0/0            md5

13. Restart PostgreSQL

sudo systemctl restart postgresql

14. Cek port PostgreSQL

ss -plnt | grep 5432

Output:

LISTEN 0 128 0.0.0.0:5432

15. Buat user database

Masuk lagi ke postgres:

sudo -u postgres psql

Buat user:

CREATE USER appuser WITH PASSWORD 'passwordku';

Buat database:

CREATE DATABASE appdb OWNER appuser;

Struktur file penting PostgreSQL di Ubuntu

FileFungsi
/etc/postgresql/18/main/postgresql.confkonfigurasi utama
/etc/postgresql/18/main/pg_hba.confauthentication
/var/lib/postgresql/18/maindata directory
/var/log/postgresql/log

Command penting PostgreSQL

Start service

sudo systemctl start postgresql

Stop

sudo systemctl stop postgresql

Restart

sudo systemctl restart postgresql

Verifikasi cluster

PostgreSQL di Ubuntu menggunakan cluster management.

Cek:

pg_lsclusters

Contoh output:

Ver Cluster Port Status Owner    Data directory
18  main    5432 online postgres /var/lib/postgresql/18/main

Tips DevOps (penting)

Kalau PostgreSQL ini dipakai untuk production server, biasanya saya langsung set:

Max connections

max_connections = 200

Shared buffers

shared_buffers = 1GB

Password encryption

password_encryption = scram-sha-256