Catatan ini akan dibuat secara bertahap dengan tujuan akhir ‘server SPSE yang bisa berjalan dengan sistem master-slave secara streaming’, sehingga bila server-master mengalami kegagalan perangkat dan tidak dapat difungsikan, dengan sedikit mengubah konfigurasi pada server-slave akan langsung menjalankan tugas menggantikan server-master.

Fitur streaming replication (dalam hal ini kita akan menggunakan hot_standby) hanya ada pada PostgreSQL 8.5 Alpha3 keatas, seperti dilansir oleh https://wiki.postgresql.org/wiki/Hot_Standby :
“Hot Standby is the name for the capability to run queries on a database that is currently performing archive recovery. Log Shipping replication allows you to create one or more standby nodes that are replicas of the primary node (or master node). Standby nodes can then be used for read-only query access.
Hot Standby was developed for inclusion in PostgreSQL 9.0 by Simon Riggs of 2ndQuadrant via public sponsorship.
The feature was committed in PostgreSQL 8.5 Alpha3 and is available in PostgreSQL 9.0 and above. See the Hot Standby docs for full details.
This feature augments streaming replication feature that was introduced in PostgreSQL 9.1, though it does not rely on it and has minimal interaction with it.”

Server SPSE menggunakan Centos 6 dan Postgresql 8.4, maka dilakukan upgrade database ke PostgreSQL 9.5, versi terbaru (stable) saat catatan ini ditulis. Postgresql 9.5 bisa di install berdampingan dengan Postgresql 8.4 tanpa saling mengganggu, proses instalasi ini dijalankan tanpa terlebih dahulu me-remove Postgresql 8.4 yang sedang berjalan.

1. yum update
2. yum upgrade
3. netstat -tulpn | grep postmaster
(127.0.0.1:5432 – ini adalah postgresql yang sedang berjalan/digunakan)
4. rpm -ivh https://download.postgresql.org/pub/repos/yum/9.5/redhat/rhel-6-x86_64/pgdg-centos95-9.5-2.noarch.rpm
5. yum install postgresql95 postgresql95-server postgresql95-devel postgresql95-contrib
6. service postgresql-9.5 initdb
7. lakukan proses backup database dari Postgresql 8.4 :
su – postgres
psql -l (misal databasenya = epns-prod)
pg_dump -U postgres epns-prod -f epns-prod.sql (akan terbentuk file /var/lib/pgsql/epns-prod.sql)
8. nano /var/lib/pgsql/9.5/data/pg_hba.conf
local all all trust
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
9. service postgresql stop
service postgresql-9.5 start
10. chkconfig postgresql off
chkconfig postgresql-9.5 on
11. su – postgres
psql
CREATE USER epns password ‘epns’;
\q
createdb -U postgres -O epns epns-prod;
psql -U postgres -d epns-prod -f epns-prod.sql
exit
12. service postgresql-9.5 restart

Sampai sini proses upgrade dan pemindahan database ke Postgresql 9.5 sudah selesai, silakan melakukan check dan re-check kembali terhadap server SPSE anda, apakah sudah bisa berjalan dengan normal? Bila tidak ada masalah , lanjutkan dengan uninstall Postgresql 8.4 :

13. yum remove postgresql postgresql-server

Siap untuk melanjutkan ke SPSE Master-Slave Streaming Replication #2?…tunggu tanggal main nya!