{"id":94,"date":"2016-04-20T01:54:35","date_gmt":"2016-04-20T01:54:35","guid":{"rendered":"http:\/\/kloxo.web.id\/?p=94"},"modified":"2016-04-20T03:17:41","modified_gmt":"2016-04-20T03:17:41","slug":"postgresql-8-4-upgrade-ke-9-5-spse-master-slave-streaming-replication-1","status":"publish","type":"post","link":"https:\/\/kloxo.web.id\/?p=94","title":{"rendered":"PostgreSQL 8.4 Upgrade ke 9.5 (SPSE Master-Slave Streaming Replication #1)"},"content":{"rendered":"<p>Catatan ini akan dibuat secara bertahap dengan tujuan akhir &#8216;server SPSE yang bisa berjalan dengan sistem master-slave secara streaming&#8217;, 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.<\/p>\n<p>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 :<br \/>\n&#8220;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.<br \/>\nHot Standby was developed for inclusion in PostgreSQL 9.0 by Simon Riggs of 2ndQuadrant via public sponsorship.<br \/>\nThe 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.<br \/>\nThis 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.&#8221;<\/p>\n<p>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. <\/p>\n<p>1. yum update<br \/>\n2. yum upgrade<br \/>\n3. netstat -tulpn | grep postmaster<br \/>\n   (127.0.0.1:5432 &#8211; ini adalah postgresql yang sedang berjalan\/digunakan)<br \/>\n4. rpm -ivh https:\/\/download.postgresql.org\/pub\/repos\/yum\/9.5\/redhat\/rhel-6-x86_64\/pgdg-centos95-9.5-2.noarch.rpm<br \/>\n5. yum install postgresql95 postgresql95-server postgresql95-devel postgresql95-contrib<br \/>\n6. service postgresql-9.5 initdb<br \/>\n7. lakukan proses backup database dari Postgresql 8.4 :<br \/>\n   su &#8211; postgres<br \/>\n   psql -l (misal databasenya = epns-prod)<br \/>\n   pg_dump -U postgres epns-prod -f epns-prod.sql (akan terbentuk file \/var\/lib\/pgsql\/epns-prod.sql)<br \/>\n8. nano \/var\/lib\/pgsql\/9.5\/data\/pg_hba.conf<br \/>\n   local all all              trust<br \/>\n   host  all all 127.0.0.1\/32 trust<br \/>\n   host  all all ::1\/128      trust<br \/>\n9. service postgresql stop<br \/>\n   service postgresql-9.5 start<br \/>\n10. chkconfig postgresql off<br \/>\n    chkconfig postgresql-9.5 on<br \/>\n11. su &#8211; postgres<br \/>\n    psql<br \/>\n    CREATE USER epns password &#8216;epns&#8217;;<br \/>\n    \\q<br \/>\n    createdb -U postgres -O epns epns-prod;<br \/>\n    psql -U postgres -d epns-prod -f epns-prod.sql<br \/>\n    exit<br \/>\n12. service postgresql-9.5 restart<\/p>\n<p>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 :<\/p>\n<p>13. yum remove postgresql postgresql-server<\/p>\n<p>Siap untuk melanjutkan ke SPSE Master-Slave Streaming Replication #2?&#8230;tunggu tanggal main nya!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Catatan ini akan dibuat secara bertahap dengan tujuan akhir &#8216;server SPSE yang bisa berjalan dengan sistem master-slave secara streaming&#8217;, 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 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-94","post","type-post","status-publish","format-standard","hentry","category-linux-server"],"_links":{"self":[{"href":"https:\/\/kloxo.web.id\/index.php?rest_route=\/wp\/v2\/posts\/94","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kloxo.web.id\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kloxo.web.id\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kloxo.web.id\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kloxo.web.id\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=94"}],"version-history":[{"count":22,"href":"https:\/\/kloxo.web.id\/index.php?rest_route=\/wp\/v2\/posts\/94\/revisions"}],"predecessor-version":[{"id":116,"href":"https:\/\/kloxo.web.id\/index.php?rest_route=\/wp\/v2\/posts\/94\/revisions\/116"}],"wp:attachment":[{"href":"https:\/\/kloxo.web.id\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=94"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kloxo.web.id\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=94"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kloxo.web.id\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=94"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}