Tutorial Ubuntu 20.04 LTS : Cara Melakukan Instalasi dan Konfigurasi Database Server Menggunakan Postgresql
Postgresql merupakan salah satu relational database yang begitu populer dan banyak digunakan karena kehandalan dan kesetabilannya. Pada postingan kali ini kita akan belajar bagaimana melakukan konfigurasi dan instalasi database server menggunakan Postgresql pada Ubuntu Server 20.04 LTS.
Install
Sebelum melakukan instalasi terlebih dahulu lakukan update dan upgrade sistem.
$ sudo apt update && sudo apt upgrade
setelah itu lakukan instalasi postgresql. Tunggu hingga proses selesai.
$ sudo apt install postgresql
Membuat User
Secara default username database postgresql ini adalah postgres
untuk membuat username baru dengan nama yang lain kalian dapat ikuti langkah berikut. Switch user menjadi user postgres
menggunakan sudo
.
$ sudo -iu postgres
Setelah berhasil untuk masuk kedalam postgresql
kalian bisa ketik psql
. Jika berhasil maka prompt shell akan berganti menjadi postgres=#
ini menandakan kita berada pada postgresql
admin shell.
postgres@zonabiner:~$ psql
psql (12.6 (Ubuntu 12.6-0ubuntu0.20.04.1))
Type "help" for help.
postgres=#
Sebelumnya untuk melihat list username dan previlages/roles yang ada pada postgresql
kalian bisa menggunakan perintah \du
.
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------------------+----------
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
postgres=#
Untuk membuat username dan database baru cukuplah mudah. Gunakanlah command dibawah ini ganti username
menjadi nama user yang kalian inginkan.
postgres=# CREATE USER zonabiner SUPERUSER CREATEDB;
postgres=# CREATE DATABASE zonabiner OWNER zonabiner;
Kemudian untuk memberikan password kepada username yang telah kita buat dapat dengan cara berikut ini.
postgres=# \password zonabiner
Enter new password:
Enter it again:
untuk keluar dari postgresql shell kalian bisa menggunakan ctrl+d
ataupun perintah exit
2 kali.
postgres=# exit postgres@zonabiner:~$ exit logout
Config
Secara default postgresql server pada ubuntu server ini tidak dapat diakses dari luar, agar nantinya kita bisa melakukan remote koneksi database ke postgresql server maka untuk listen address
kita enable terlebih dahulu dengan mengapus tanda #
dan ubah menjadi *
untuk semua network. Jika kalian hanya ingin network tertentu saja yang boleh melakukan remote maka dapat kalian isikan sesuai network address yang diperbolehkan, misal 10.1.1.0/24
.
$ sudo nano /etc/postgresql/12/main/postgresql.conf
# - Connection Settings -
listen_addresses = '*' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
port = 5432 # (change requires restart)
Tidak hanya konfigurasi diatas, kita juga perlu mengkonfigurasi username, database, addreess, hingga metode enkripsi untuk melakukan remote ke database postgresql. Dari sini kita dapat melihat bahwa postgresql ini cukuplah aman karena hal tersebut. Mari kita definisikan terlebih dahulu. Sebagai contoh disini saya memperbolehkan semua user dan database dapat diakses oleh semua network 0.0.0.0/0
. Tambahkan pendefinisian ini diline paling bawah.
$ sudo nano /etc/postgresql/12/main/pg_hba.conf
# 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 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all peer
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5
host all all 0.0.0.0/0 md5
Jika sudah jangan lupa untuk melakukan restart service.
$ sudo systemctl restart postgresql.service
Cara Remote
Untuk melakukan remote ke postgresql server caranya mudah kalian hanya perlu menggunakan tools psql
atau tools remote manajemen database lain seperti beekeeperstudio
ataupun pgadmin 4
. Berikut caranya jika ingin melakukan remote menggunakan psql
.
$ sql -h 10.1.1.29 -U zonabiner -d zonabiner
Untuk melihat atribut command lengkap psql kalian dapat menggunakan perintah psql --help
. Sedikit info mengenai command diatas.
-h host/ip address databases server -U Username databases -d Nama Databases yang ingin diakses
Sampai disini kita sudah berhasil melakukan instalasi fan konfigurasi databases server menggunakan pstgresql pada ubuntu 20.04 LTS. Bagaimana cukup mudah kan ? 😉