Cara Install PostgreSQL di AlmaLinux

Terakhir diupdate: 16 Mei 2025

Hai, Sobat Jagoan! PostgreSQL adalah sistem manajemen basis data relasional yang dikenal karena ketangguhan, keandalan, dan kestabilannya. Berkat pengembangan open source selama lebih dari 30 tahun oleh komunitas global, PostgreSQL menjadi pilihan utama dalam berbagai skenario, mulai dari transaksi keuangan, lalu lintas situs berskala besar, hingga platform e-commerce. Tak hanya itu, PostgreSQL juga mendukung fungsi kustom yang ditulis dengan berbagai bahasa pemrograman seperti Java, Python, C/C++, dan lainnya.

Versi terbaru PostgreSQL 17 hadir dengan peningkatan performa yang signifikan, termasuk pengelolaan memori yang lebih baik, kemampuan baru dalam manipulasi data JSON, dan perbaikan besar dalam replikasi logis serta pemrosesan query paralel. Pada artikel ini, kamu akan dipandu untuk meng-install PostgreSQL 17 di AlmaLinux 9, lengkap dengan langkah-langkah teknis yang praktis dan mudah diikuti untuk pemula maupun administrator database yang baru belajar. Yuk, Sob kamu bisa langsung simak artikel di bawah ini untuk mulai instal PostgreSQL di AlmaLinux.

Pastikan kamu memiliki hosting VPS AlmaLinux aktif untuk mengikut artikel ini, Sob!

Step 1: Buat Koneksi SSH VPS

Pertama, buat koneksi SSH ke VPS kamu melalui terminal. Jika menggunakan sistem operasi Windows, kamu bisa menggunakan PuTTY.

Detail informasi awal layanan kamu bisa diakses pada Informasi Awal Layanan VM.

Step 2: Update Sistem

Sebelum mulai instalasi, update list package lama ke versi terbaru dulu.

				
					sudo dnf update -y
				
			

Step 3: Instal PostgreSQL

Di AlmaLinux, terdapat paket PostgreSQL versi 15 dan 16 yang tersedia pada komponen AppStream. Kamu bisa melihatnya dengan perintah berikut.

				
					sudo dnf module list posgresql
				
			

Output:

1-perintah-cek module postgresql-cara-instal-postgresql-almalinux

Tapi, artikel ini akan mendemonstrasikan instal PostgreSQL 17. Pertama, tambahkan 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 menginstal PostgreSQL, disable dulu module default PostgreSQL.

				
					sudo dnf -qy module disable postgresql
				
			

Output:

3-perintah-remove-module postgresql-cara-instal-postgresql-almalinux

Kemudian, jalankan perintah berikut untuk memulai instalasi PostgreSQL 17.

				
					sudo dnf install -y postgresql17-server
				
			

Output:

2-perintah-instal postgresql-cara-instal-postgresql-almalinux

Step 4: Inisialisasi dan Memulai PostgreSQL 17

Sebelum menjalankan service PostgreSQL, inisialisasi database.

				
					sudo /usr/pgsql-17/bin/postgresql-17-setup initdb
				
			

Perintah tersebut akan membuat data awal dan file konfigurasi utama yang akan ditulis pada direktori /var/lib/pgsql/17/data/postgresql.conf

Mulai jalankan service PostgreSQL dengan perintah di bawah ini.

				
					sudo systemctl enable postgresql-17
sudo systemctl start postgresql-17
				
			

Setelah berhasil dijalankan, pastikan statusnya “active (running)”

				
					sudo systemctl status postgresql-17
				
			

Output:

				
					postgresql-17.service - PostgreSQL 17 database server
     Loaded: loaded (/usr/lib/systemd/system/postgresql-17.service; enabled; pr>
     Active: active (running) since Thu 2025-05-15 01:48:15 UTC; 8s ago
       Docs: https://www.postgresql.org/docs/17/static/
    Process: 63602 ExecStartPre=/usr/pgsql-17/bin/postgresql-17-check-db-dir ${>
   Main PID: 63607 (postgres)
      Tasks: 7 (limit: 4033)
     Memory: 17.6M
        CPU: 51ms
     CGroup: /system.slice/postgresql-17.service
             ├─63607 /usr/pgsql-17/bin/postgres -D /var/lib/pgsql/17/data/
             ├─63608 "postgres: logger "
             ├─63609 "postgres: checkpointer "
             ├─63610 "postgres: background writer "
             ├─63612 "postgres: walwriter "
             ├─63613 "postgres: autovacuum launcher "
             └─63614 "postgres: logical replication launcher "

May 15 01:48:14 tutorial.my.id systemd[1]: Starting PostgreSQL 17 data>
May 15 01:48:15 tutorial. my.id postgres[63607]: 2025-05-15 01:48:15.00>
May 15 01:48:15 tutorial. my.id postgres[63607]: 2025-05-15 01:48:15.00>
May 15 01:48:15 tutorial. my.id systemd[1]: Started PostgreSQL 17 database>
				
			

Step 5: Menggunakan PostgreSQL 17

Terdapat 2 cara untuk masuk ke console PostgreSQL versi 17.

  1. Langsung jalankan perintah psql dengan sudo
				
					sudo -u postgres psql
				
			

Setelah berhasil login akan muncul prompt PostgreSQL seperti ini:

4-login-console-cara-instal-postgresql-almalinux

Kalau ingin mengakhiri sesi, jalankan:

				
					exit
				
			

2. Login dulu sebagai user postgres, lalu jalankan psql

				
					sudo -i -u postgres
				
			

Setelah login jalankan:

				
					psql
				
			

Kamu akan masuk ke concole PostgreSQL seperti pada cara pertama.

Untuk keluar dari shell, jalankan:

				
					\q
				
			

Lalu keluar dari console PostgreSQL dengan:

				
					exit
				
			

Mengatur Password User postgres

Setelah masuk ke dalam PostgreSQL, jalankan:

				
					ALTER USER postgres WITH PASSWORD 'StrongPassw0rd';
				
			

Perintah di atas akan mengatur password untuk user postgres, jangan lupa ganti ‘StrongPassw0rd’ dengan password kamu.

Uji login setelah ganti password dengan:

				
					psql -U postgres -W
				
			

Membuat Database di PostgreSQL

Format membuat database baru di PostgreSQL seperti berikut.

				
					CREATE DATABASE namadb;
				
			

Kalau ingin melihat daftar database:

				
					\l
				
			

Membuat Tabel di PostgreSQL

Ketika akan membuat tabel dalam database, kamu perlu memilih database mana yang digunakan dengan command:

				
					\c namadatabase
				
			

Misalnya setelah membuat database, kamu ingin membuat sebuah tabel bernama ‘employess’ dengan beberapa kolom.

				
					CREATE TABLE Employees (
  user_id serial PRIMARY KEY,
  username VARCHAR (50) UNIQUE NOT NULL,
  password VARCHAR (50) NOT NULL,
  email VARCHAR (255) UNIQUE NOT NULL,
  created_on TIMESTAMP NOT NULL,
  last_login TIMESTAMP
);
				
			

Penjelasan kolom:

  • user_id: Nomor ID otomatis (primary key)
  • username: Harus unik dan tidak boleh kosong
  • password: Tidak boleh kosong
  • email: Harus unik dan tidak boleh kosong
  • created_on: Tanggal pembuatan
  • last_login: Boleh kosong (null)

Untuk melihat daftar tabel dalam database saat ini, gunakan query berikut.

				
					\dt
				
			

Untuk menghapus tabel dari database, gunakan query:

				
					DROP TABLE namatable;
				
			

Mengubah Port PostgreSQL

Jika kamu ingin merubah port PostgreSQL untuk alasan tertentu itu bisa dilakukan. Secara default, PostgreSQL berjalan menggunakan port 5432. Untuk memeriksa port yang digunakan saat ini gunakan perintah:

				
					sudo netstat -nltp
				
			

Output:

				
					Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State          PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN         39999/sshd: /usr/sb
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN         1/systemd
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN         64171/postgres
tcp6       0      0 :::22                   :::*                    LISTEN         39999/sshd: /usr/sb
tcp6       0      0 :::80                   :::*                    LISTEN         51666/httpd
tcp6       0      0 :::111                  :::*                    LISTEN         1/systemd
tcp6       0      0 ::1:5432                :::*                    LISTEN         64171/postgres
tcp6       0      0 :::3306                 :::*                    LISTEN         50196/mysqld
tcp6       0      0 :::33060                :::*                    LISTEN         50196/mysqld
				
			

Kalau belum instal paket netstat, jalankan command:

				
					sudo dnf install net-tools
				
			

Untuk mengubah port, buka file konfigurasi postgresql.conf.

				
					sudo vi /var/lib/pgsql/17/data/postgresql.conf
				
			

Cari baris: #port = 5432

Hapus tanda ‘#’ dan ubah menjadi:

				
					port = 5436
				
			

5436 adalah port baru yang akan digunakan PostgreSQL.

Kemudian restart service PostgreSQL agar perubahan port terbaca.  Setelah itu kamu bisa memeriksa kembali port PostgreSQLnya.

				
					sudo systemctl restart postgresql-17
				
			

Catatan: Mengganti port PostgreSQL tidak boleh sembarangan ya, Sob. Ada aturan dan pertimbangan teknis yang perlu kamu tahu. Ada rentang angka port yang valid:

  • Rentang 1-65535
  • Tapi, 1-1023 disebut well-known ports: digunakan oleh protokol standar seperti 22 (SSH), 80 (HTTP), 443 (HTTPS), 25 (SMTP)
  • 1024-49151 disebut registered ports: digunakan oleh aplikasi seperti PostgreSQL, MySQL dan lainnya.
  • 49152-65535 disebut dynamic/private ports: biasanya aman untuk keperluan sendiri

Saran buat kamu, gunakan port di rentang 1024-65535 dan pastikan tidak dipakai oleh layanan lain. Atau kamu bisa pakai port aman yang bisa digunakan untuk PostgreSQL seperti, 5443, 5434, 5435, 5436, dan seterusnya. Kalau mau lebih aman gunakan port diatas 6000.

Mengaktifkan Akses PostgreSQL Remote

Supaya PostgreSQL kamu dapat terkoneksi ke server melalui jaringan sehingga bisa diakses melalui remote, kamu bisa melakukan perubahan pada konfigurasi dan mengatur listen address ke alamat ip server kamu.

				
					sudo vi /var/lib/pgsql/17/data/postgresql.conf
				
			

Cari bagian listen_addressess dan tuliskan ip kamu.

				
					listen_addresses = '192.168.156.53'
				
			

Kalau ingin menerima dari semua IP, pakai ‘0.0.0.0’, tapi ini kurang aman untuk server publik.

Selain itu, atur konfigurasi agar PostgreSQL menerima koneksi remote.

				
					sudo vi /var/lib/pgsql/17/data/pg_hba.conf
				
			

Tambahkan baris di bawah ini untuk subnet tertentu (misal IP client 192.168.1.x):

				
					host    all    all    192.168.1.0/24    md5
				
			
4-konfigurasi-akses-remote-cara-instal-postgresql-almalinux

Kalau mau terima dari semua IP (tidak disarankan kecuali dikontrol firewall):

				
					host    all    all    0.0.0.0/0         md5
				
			

Kamu perlu mengaktifkan firewall untuk mengijinkan port PostgreSQL. Untuk menjalankan perintah ini kamu perlu mengunduh paket perintah firewalld dulu ya, Sob.

				
					sudo firewall-cmd --zone=public --add-port=5432/tcp --permanent
sudo firewall-cmd --reload
				
			

Perintah untuk menginstal dan mengaktifkan paket perintah firewalld.

				
					sudo dnf install firewalld
sudo dnf enable firewalld
sudo dnf start firewalld
				
			

Terakhir, untuk menerapkan perubahan restart service database.

				
					sudo systemctl restart postgresql-17
				
			

Kamu bisa coba membuat koneksi remote dengan menjalankan:

				
					psql -U <dbuser> -h <serverip> -p 5432 <dbname>
				
			

Contoh:

psql -U postgres -h 192.168.156.53 -p 5432 testdb

Troubleshooting

Ketika kamu mencoba masuk ke shell PostgreSQL dengan password lalu mendapat error:
psql: error: connection to server on socket “/run/postgresql/.s.PGSQL.5432” failed: FATAL:  Peer authentication failed for user “postgres”

Artinya, PostgreSQL tidak menerima login kamu karena metode autentikasinya adalah “peer” jadi hanya user Linux yang sama dengn nama user PostgreSQL yang boleh login. Solusinya kamu perlu mengubah metode autentikasi dari peer ke md5 supaya bisa login pakai password.

				
					sudo vi /var/lib/pgsql/17/data/pg_hba.conf
				
			

Cari baris:

				
					local   all             all                                     peer
				
			

Lalu ubah menjadi:

				
					local   all             all                                     md5
				
			

Kemudian, restart service PostgreSQL. Dan coba login ulang menggunakan password.

				
					sudo systemctl restart postgresql-17
				
			

Setelah mengikuti artikel ini, kamu sudah berhasil meng-install PostgreSQL 17 di AlmaLinux dan siap menggunakannya untuk membangun aplikasi. Dengan berbagai fitur baru seperti SQL/JSON, peningkatan kinerja saat penulisan data dalam kondisi bersamaan, dan dukungan replikasi logis yang lebih baik, PostgreSQL menjadi pilihan tepat untuk skala kecil maupun enterprise. Kamu juga sudah mencoba membuat database serta user di PostgreSQL dan beberapa pengaturan sederhana lainnya. Kalau ada yang masih bikin bingung, jangan ragu hubungi Tim Support Jagoan Hosting ya, Sob!

Related Posts
Cara Instal Web Server Nginx di Almalinux

Halo, Sob! AlmaLinux merupakan sebuah sistem operasi distribusi berbasis Red Hat Enterprise Linux (RHEL) yang stabil dan banyak digunakan di Read more

Cara Instal Web Server Apache di AlmaLinux

Hai, Sob! Apache HTTP Server (httpd) merupakan salah satu web server tertua dan paling banyak digunakan di dunia, terkenal karena Read more

Cara Konfigurasi Virtual Host di AlmaLinux

Hai, Sobat Jagoan!  Untuk meng-host situs web pada server kamu sendiri, kamu harus menginstal sebuah server web. Di antara yang Read more

Cara Install MySQL di AlmaLinux

Hai, Sob! Server database adalah inti dari banyak aplikasi web di Internet. Efisiensi sumber daya dan kinerjanya yang luar biasa Read more

Scroll To Top