Apabila diperlukan alat bantu pengelolaan sistem database PostgreSQL, kita dapat menggunakan phpPgAdmin, yang berbasis web. Dengan demikian, untuk bekerja dengan database, kita cukup menggunakan web browser. Apa yang diperlukan adalah Apache HTTP Server dan PHP (dengan tambahan ekstensi tertentu). Kita dapat menginstalasi phpPgAdmin pada komputer yang sama dengan instalasi server PostgreSQL, ataupun di komputer berbeda.
Tutorial ini mengasumsikan sistem operasi yang digunakan adalah Rocky Linux 8, dimana semua yang dibutuhkan untuk menjalankan phpPgAdmin tersedia sebagai package yang siap diinstalasi. Untuk phpPgAdmin sendiri, kita akan menggunakan versi terbaru pada saat tutorial ini ditulis, yaitu versi 7.13.0. Dalam tutorial ini, PostgreSQL diinstalasi pada komputer yang sama.
Catatan:
Apabila PostgreSQL telah terinstal atau ingin menggunakan instalasi PostgreSQL di komputer lain, pembahasan ini dapat dilewati.
Rocky Linux menyediakan beberapa versi PostgreSQL dalam repositori AppStream. Untuk melakukan instalasi versi default, berikanlah perintah berikut:
dnf install postgresql postgresql-server
Apabila membutuhkan PostgreSQL versi tertentu (misal versi 9.6 untuk kompatibilitas dengan sistem tertentu), berikanlah perintah berikut sebelum menjalankan perintah instalasi sebelumnya:
dnf module list postgresql dnf module enable postgresql:9.6
Setelah instalasi selesai, lakukanlah inisialisasi database dengan perintah berikut:
postgresql-setup --initdb
Kemudian, pastikanlah PostgreSQL dijalankan dengan perintah berikut:
systemctl enable postgresql systemctl start postgresql
Pada tutorial ini, PostgreSQL dikonfigurasi agar mengijinkan semua user dapat mengakses semua database selama berasal dari 127.0.0.1, dengan metode otentikasi adalah md5. Sesuaikanlah apabila Anda menggunakan konfigurasi berbeda (misal metode yang lebih modern). Untuk menyesuaikan konfigurasi host-based authentication ini, editlah file /var/lib/pgsql/data/pg_hba.conf dengan editor teks (misal: nano).
nano /var/lib/pgsql/data/pg_hba.conf
Dengan konfigurasi yang disebutkan sebelumnya, pastikanlah terdapat baris berikut dalam file pg_hba.conf, dalam kondisi tidak dikomentari (baris tidak diawali karakter #):
host all all 127.0.0.1/32 md5
Setelah mengedit file ini, restartlah PostgreSQL dengan perintah berikut:
systemctl restart postgresql
Sebelum kita menutup pembahasan ini, mari kita buat sebuah user dengan nama test (dimana diberikan password tertentu dan hak untuk membuat database). Dengan su, jadilah user postgres untuk membuat user:
su postgres createuser -d -P test
Kemudian, setelah user database dibuat, buatlah database test sebagai user test tersebut. Dalam hal ini, kita dapat kembali ke user sistem lain (tidak lagi postgres).
createdb -h 127.0.0.1 -U test test
Nantinya, setelah phpPgAdmin setelah diinstalasi, kita akan mengelola database sebagai user test ini.
Berikanlah perintah berikut untuk melakukan instalasi httpd, php, dan ekstensi yang diperlukan:
dnf install httpd php php-pgsql php-mbstring
Setelah selesai, pastikanlah httpd dijalankan dengan perintah berikut:
systemctl enable httpd systemctl start httpd
Kita akan menggunakan alias /phppgadmin untuk mengakses instalasi phpPgAdmin. Untuk itu, buatlah file /etc/httpd/conf.d/phppgadmin.conf dengan isi file sebagai berikut:
Alias /phppgadmin /var/www/phppgadmin <Directory /var/www/phppgadmin> AuthType Basic AuthName "FrontEnd" AuthUserFile /etc/httpd/.passwd Require valid-user <Directory>
Merujuk pada file tersebut, kita:
Buatlah user untuk basic auth tersebut dengan perintah berikut (dengan contoh user yang dibuat adalah admin):
htpasswd -c /etc/httpd/.passwd admin
Restartlah httpd setelah membuat file konfigurasi phppgadmin.conf:
systemctl restart httpd
Kita akan mendownload phpPgAdmin dengan wget. Lakukanlah instalasi wget apabila diperlukan.
Instalasi dimulai dengan membuat direktori dan aktif pada direktori yang dibuat tersebut:
mkdir /var/www/phppgadmin cd /var/www/phppgadmin
Kemudian, kita akan mendownload dan menguraikan arsip hasil download ke direktori aktif:
wget https://github.com/phppgadmin/phppgadmin/releases/download/REL_7-13-0/phpPgAdmin-7.13.0.tar.bz2 tar jxvf phpPgAdmin-7.13.0.tar.bz2 rm phpPgAdmin-7.13.0.tar.bz2 mv phpPgAdmin-7.13.0/* . rmdir phpPgAdmin-7.13.0
Langkah terakhir adalah mengedit file conf/config.inc.php. Dalam hal ini, kita akan terhubung ke instalasi PostgreSQL di komputer yang sama, sehingga sesuaikanlah baris tersebut pada file konfigurasi:
$conf['servers'][0]['host'] = '127.0.0.1'
Instalasi selesai. Instalasi phpPgAdmin dapat diakses dengan web browser dengan URL <ip>/phppgadmin, dimana <ip> adalah alamat IP komputer yang terinstalasi phpPgAdmin (misal: 127.0.0.1). Apabila basic auth diaktifkan seperti pada tutorial ini, otentikasi akan diperlukan sebelum menggunakan phpPgAdmin.
Terima kasih telah membaca :)