Scroll untuk baca artikel
DatabasePostgresql

Install Postgresql 17 di Red Hat Family

55
×

Install Postgresql 17 di Red Hat Family

Sebarkan artikel ini

Install Postgresql 17 di Red Hat Enterprise/Linux Rocky/Linux AlmaLinux CentOS (7 and 6 only)/Fedora/Oracle Linux

logo postgresql
logo postgresql
66 / 100

Install Postgresql 17 di Red Hat family

Step Step Langkah Install

1. Install Repository RPM

Jika Versi 8 maka gunakan :

sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

Jika Versi 9 maka gunakan :

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

2. Nonaktifkan modul PostgreSQL bawaan:

sudo dnf -qy module disable postgresql

3.Install PostgreSQL

sudo dnf install -y postgresql17-server

4.  Inisialisasi database

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

5. Aktifkan mulai otomatis

sudo systemctl enable postgresql-17

Kemudian jalankan

sudo systemctl start postgresql-17

6. Akses Postgresql dengan menggunakan user postgres

sudo -i -u postgres psql

setelah berhasil ke postgres=# kita sudah bisa membuat user dan create database dan config lainnya

7. Buat User (Role) Baru, secara default setelah install

postgres otomatis di server tercreate user postgres

Gunakan perintah berikut untuk membuat user dengan password:

CREATE USER nama_user WITH PASSWORD 'password_user';

Silahkan sesuaikan nama_user dan password_user, sesuai kebutuhan

8. Buat Database Baru, secara, secara default setelah install postgres otomatis di server tercreate database postgres

Gunakan perintah berikut untuk membuat database:

CREATE DATABASE nama_database OWNER nama_user;

silahkan sesuaikan nama_database dan nama_user sesuai kebutuhan

9. Berikan Hak Akses ke User yang telah dibuat

Pastikan user memiliki hak akses ke database yang dibuat:

GRANT ALL PRIVILEGES ON DATABASE nama_database TO nama_user;

sesuaikan nama_database dan nama_user sesuai nama database dan nama user yang telah di buat menggunakan perintah sebelumnya

10. Keluar dari PostgreSQL dengan:

\q

atau bisa juga ketik dengan

exit

11. Konfigurasi PostgreSQL untuk Remote Access

Agar bisa di akses dari luar kita perlu melakukan konfiguasi dengan melakukan edit pada

a. Edit postgresql.conf

Buka file postgresql.conf yang biasanya ada di /var/lib/pgsql/17/data/

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

Cari baris berikut dan rubah:

#listen_addresses = 'localhost'

Rubah menjadi :

listen_addresses = '*'

Simpan dan keluar.

b. Edit pg_hba.conf

Buka file pg_hba.conf di direktori yang sama /var/lib/pgsql/17/data/

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

Tambahkan setelah baris di bawah ini

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256

Tambahkan baris berikut setelah baris di atas untuk mengizinkan akses dari semua IP (atau spesifik subnet):

host    all             all             0.0.0.0/0               md5

Setelah di tambahkan menjadi

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             0.0.0.0/0               md5
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256

 

Jika ingin melakukan spesifik ip yang memperbolehkan ip segman mana saja silahkan tambahkan sampe spesifik

Contoh Jika hanya ingin mengizinkan subnet tertentu (misalnya 192.168.1.0/24 ), gunakan:

host    all             all             192.168.1.0/24       md5

Jika di buatkan spesifik maka ip selain depannya 192.168.1 maka tidak di izinkan mengakses database

setelah di lakukan edit kemudian di save

12. Restart PostgreSQL

Restart layanan PostgreSQL agar perubahan diterapkan:

sudo systemctl restart postgresql-17

13. Pastikan Firewall Mengizinkan Akses ke Port default 5432 PostgreSQL

Buka port default PostgreSQL (5432) di firewall:

sudo firewall-cmd --add-port=5432/tcp --permanent

Kemudian jalankan perintah berikut agar perubahan bisa di terapkan

sudo firewall-cmd --reload

14. Uji Remote Connection

Coba akses PostgreSQL dari mesin remote menggunakan psql atau aplikasi database client seperti DBeaver:

psql -h alamat_ip_server -U nama_user -d nama_database

Silahkan sesuaikan alamat_ip_server, nama_user dan nama_database

 

 

 

 

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.

Verified by MonsterInsights