UUID di Instalasi PostgreSQL

Posted in: Data  
Tags: PostgreSQL   Instalasi   UUID  
Author: Bambang Purnomosidi D. P. | | 2 minutes reading time

PostgreSQL adalah salah satu RDBMS yang dikembangkan sudah sejak lama (1996) dan menjadi basis pengembangan software-software lainnya (YugabyteDB, CockroachDB, EDB). Hampir semua distro Linux menyertakan PostgreSQL dalam distribusinya. Sistem operasi lain juga didukung. Artikel ini membahas sedikit tentang UUID dan kaitannya dengan instalasi PostgreSQL.

Pada PostgreSQL versi lama, UUID dihasilkan oleh pustaka yang dibuat oleh OSSP. Sayangnya, software yang dibuat oleh legenda open source Ralf Engelschall ini tidak dikembangkan lagi. Oleh karena itu, proses untuk menghasilkan UUID sebaiknya menggunakan pustaka lainnya. Secara umum, ada 3 pilihan yang bisa digunakan dalam parameter --with-uuid=LIB (ganti LIB dengan salah satu dari:

  1. ossp: menggunakan versi (obsolete) dari OSSP
  2. e2fs: menggunakan libuuid dari e2fsprogs.
  3. bsd: menggunakan fungsi dari BSD.

Saya sendiri menggunakan libuuid sehingga proses konfigurasi menjadi:

$ ./configure --prefix=/home/bpdp/software/dbms/postgresql/16.2 --with-uuid=e2fs

Setelah itu, untuk mengkompilasi dan menginstall:

$ make
$ make install

Berikutnya, tetapkan lokasi direktori untuk data dan gunakan sebagai parameter dari pg_ctl untuk start maupun stop. Saya membuat alias berikut ini (Fish shell):

set -x PATH /home/bpdp/software/dbms/postgresql/16.2/bin $PATH

alias startpsql="pg_ctl -D /home/bpdp/software/dbms/postgresql/16-data -l logfile start"
alias stoppsql="pg_ctl -D /home/bpdp/software/dbms/postgresql/16-data stop"

Untuk bisa menggunakan alias tersebut, perlu dilakukan inisialisasi lsebih dahulu:

$ initdb -D /home/bpdp/software/dbms/postgresql/16-data

Inisialisasi ini cukup dilakukan sekali saja, di awal saat akan menggunakan suatu direktori sebagai lokasi data. Kompilasi ini akan menghasilkan user dengan nama sesuai dengan user sistem operasi yang melakukan kompilasi.