Cara Install dan Konfigurasi PostgreSQL di CentOS 8

Install-dan-Konfigurasi-PostgreSQL-di-CentOS-8.jpg

PostgreSQL atau Postgres adalah” sistem manajemen relasional database open-source dengan banyak fitur canggih yang memungkinkan Anda untuk membangun lingkungan /fault-tolerant/ ataupun aplikasi yang kompleks.

Dalam panduan ini, kita akan membahas cara menginstal server database PostgreSQL di CentOS 8. Sebelum memilih versi mana yang akan diinstal, pastikan aplikasi Anda mendukungnya.

Kami juga akan mengeksplorasi dasar-dasar administrasi database PostgreSQL.

*Persiapan*

Sebelum melanjutkan dengan tutorial ini, pastikan Anda masuk sebagai” user dengan hak istimewa sudo.

*Install PostgreSQL di CentOS 8*

Pada saat penulisan artikel ini, versi terbaru PostgreSQL yang tersedia dari repositori resmi CentOS yaitu versi 9.6 dan 10.0.

Untuk daftar modul” stream PostgreSQL yang tersedia, ketik:

dnf module list postgresql

Output menunjukkan bahwa modul postgresql tersedia dengan dua stream. Setiap aliran memiliki dua profil: server dan klien. Stream 10 dengan profil server adalah [d] yang artinya /default/:

CentOS-8 – AppStream Name Stream Profiles Summary postgresql 10 [d] client, server [d] PostgreSQL server and client module postgresql 9.6 client, server [d] PostgreSQL server and client module

1. Untuk menginstal stream default atau PostgreSQL versi *10.0* ketik:

sudo dnf install @postgresql:10

2. Untuk menginstal server PostgreSQL versi* 9.6* ketik:

sudo dnf install @postgresql:9.6

Anda mungkin juga ingin menginstal paket contrib yang menyediakan beberapa fitur tambahan untuk database PostgreSQL:

sudo dnf install postgresql-contrib

Setelah instalasi selesai, inisialisasi database PostgreSQL dengan perintah berikut:

sudo postgresql-setup initdb

Initializing database … OK

Mulai layanan PostgreSQL dan aktifkan untuk memulai saat boot:

sudo systemctl enable –now postgresql

Gunakan alat psql” untuk memverifikasi instalasi dengan menghubungkan ke server database PostgreSQL dan mencetak versinya:

sudo -u postgres psql -c “SELECT version();”

PostgreSQL 10.6 on x86_64-redhat-linux-gnu, compiled by gcc (GCC) 8.2.1 20180905 (Red Hat 8.2.1-3), 64-bit

*PostgreSQL Role dan Metode Otentikasi*

Izin akses basis data dalam PostgreSQL ditangani dengan konsep peran. Peran dapat mewakili pengguna basis data atau sekelompok pengguna database.

PostgreSQL mendukung banyak” metode otentikasi. Yang paling umum digunakan adalah:

· *Trust*” “€“ Dengan metode ini, peran dapat terhubung tanpa kata sandi, selama kriteria yang ditentukan dalam” pg_hba.conf” terpenuhi. · *Password*” “€“ Peran dapat terhubung dengan memberikan kata sandi. Kata sandi dapat disimpan sebagai” scram-sha-256md5″ dan” password” (clear-text) · *Ident*” “€“ Metode ini hanya didukung pada koneksi TCP / IP. Bekerja dengan mendapatkan nama pengguna sistem operasi klien, dengan pemetaan nama pengguna opsional. · *Peer*” “€“ Sama seperti Ident tetapi hanya didukung pada koneksi lokal.

Otentikasi klien PostgreSQL didefinisikan dalam file konfigurasi bernama” pg_hba.conf. Secara default untuk koneksi lokal, PostgreSQL diatur untuk menggunakan metode otentikasi peer.

Pengguna” postgres” dibuat secara otomatis ketika menginstal PostgreSQL. Pengguna ini adalah” superuser” untuk instance PostgreSQL dan itu setara dengan root di MySQL.

Untuk masuk ke server PostgreSQL sebagai” postgres, terlebih dahulu Anda harus beralih ke user” postgres” dan kemudian Anda dapat mengakses prompt PostgreSQL menggunakan utilitas” psql:

sudo su – postgres psql

Dari sini Anda dapat berinteraksi dengan instance PostgreSQL Anda. Untuk keluar dari shell PostgreSQL ketik perintah berikut:

\q

Anda juga dapat mengakses prompt PostgreSQL tanpa mengalihkan pengguna menggunakan perintah” sudo:

sudo -u postgres psql

Pengguna” postgres” biasanya hanya digunakan dari host lokal dan disarankan untuk tidak mengatur password untuk pengguna” postgresini.

*Membuat Role dan Database PostgreSQL*

Anda dapat membuat peran baru dari baris perintah menggunakan perintah” createuser. Hanya superusers dan user dengan hak istimewa” CREATEROLE” yang dapat membuat peran baru.

Dalam contoh berikut, kita akan membuat peran baru bernama” dona” sebuah database bernama” donadb” dan memberikan hak istimewa pada database.

1. Perintah berikut akan membuat role baru bernama dona:

sudo su – postgres -c “createuser dona”

2. Buat Database PostgreSQL baru. Buat database baru bernama donadb menggunakan perintah” createdb:

sudo su – postgres -c “createdb donadb”

3. Untuk memberikan izin kepada pengguna” dona” pada database yang telah kita buat di langkah sebelumnya, sambungkan ke shell PostgreSQL:

sudo -u postgres psql

dan jalankan kueri berikut :

grant all privileges on database donadb to dona;

*Aktifkan remote access ke server PostgreSQL*

Secara default, server PostgreSQL hanya listen pada antarmuka lokal” 127.0.0.1. Untuk mengaktifkan akses jarak jauh ke server PostgreSQL, buka file konfigurasi” postgresql.conf” dan tambahkan” listen_addresses = ‘*'” di bagian” CONNECTIONS AND AUTHENTICATION.

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

#—————————————————————————— # CONNECTIONS AND AUTHENTICATION #——————————————————————————

# – Connection Settings –

listen_addresses = ‘*’ # what IP address(es) to listen on;

simpan file dan restart layanan PostgreSQL dengan:

sudo service postgresql restart

Verifikasi perubahan dengan utilitas” ss

ss -nlt | grep 5432

LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128 [::]:5432 [::]:*

Seperti yang Anda lihat dari output di atas, server PostgreSQL listen pada semua interface(0.0.0.0).

Langkah terakhir adalah mengkonfigurasi server untuk menerima koneksi jarak jauh dengan mengedit file” pg_hba.conf.

Berikut adalah beberapa contoh yang menunjukkan berbagai kasus penggunaan:

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

” TYPE ” DATABASE ”  ”  ”  ” USER ”  ”  ”  ”  ”  ” ADDRESS ”  ”  ”  ”  ”  ”  ”  ”  METHOD # “local” is for Unix domain socket connections only local ”  all ”  ”  ”  ”  ”  ”  all ”  ”  ”  ”  ”  ”  ”  ”  ”  ”  ”  ”  ”  ”  ”  ”  ”  ” md5 # IPv4 local connections: host ”  ” all ”  ”  ”  ”  ”  ”  all ”  ”  ”  ”  ”  ”  0.0.0.0/0 ”  ”  ”  ”  ”  ” md5 # IPv6 local connections: host ”  ” all ”  ”  ”  ”  ”  ”  all ”  ”  ”  ”  ”  ”  ::0/0 ”  ”  ”  ”  ”  ”  ”  ”  md5 # All IPs host ”  ” all ”  ”  ”  ”  ”  ”  dona ”  ”  ”  ”  ”  ”  ” all ”  ”  ”  ”  ”  ”  ”  ”  trust

*Kesimpulan*

Anda telah belajar cara menginstal dan mengkonfigurasi PostgreSQL di server CentOS 8 .

Untuk informasi lebih lanjut tentang topik ini, kunjungi halaman dokumentasi” PostgreSQL.

Leave a Reply

Your email address will not be published.

scroll to top