Paket Cadangan:
1. Cadangkan skema slony (_slonyschema) yang ada dari master/slave
2. Cadangkan Binari Slony LAMA
3. Cadangkan semua awalnya membuat file konfigurasi slony.
Prosedur Peningkatan:
1. Hentikan semua proses slon yang berjalan di semua node.
2. Instal versi baru binari Slony 2.1.x.
3. Jalankan skrip peningkatan SLONIK
4. Mulai slony dengan binari baru di semua node.
Tautan:http://slony.info/documentation/2.1/slonyupgrade.html
Current PostgreSQL & Slony version:
repdb=# select substr(version(),1,26) as "PostgreSQL-Version",_myrep.slonyversion();
PostgreSQL-Version | slonyversion
----------------------------+--------------
PostgreSQL 9.1.3 on x86_64 | 2.0.7
(1 row)
Instal/Konfigurasikan versi terbaru dari sumber Slony-I 2.1.x
wget http://main.slony.info/downloads/2.0/source/slony1-2.1.0.tar.bz2
./configure --prefix=/opt/PostgreSQL/9.1/bin --with-pgconfigdir=/opt/PostgreSQL/9.1/bin
make
make install
After installation, you can find three executables slon, slonik & slon_logshipper under "/opt/PostgreSQL/9.1/bin/bin".
-bash-4.1$ ./slon -v
slon version 2.1.0
Skrip Peningkatan:
## Upgrade script
cluster name = myrep;
node 1 admin conninfo='host=localhost dbname=postgres user=postgres port=5432';
node 2 admin conninfo='host=localhost dbname=repdb user=postgres port=5433';
UPDATE FUNCTIONS ( ID = 1 );
UPDATE FUNCTIONS ( ID = 2 );
Note: Update all the nodes with UPDATE FUNCTIONS. I have two nodes Master(5432) and Slave(5433).
Jalankan skrip:
-bash-4.1$ slonik upgrade_207_201.slonik
Mulai proses slony dengan binari baru dan periksa perubahannya.
postgres=# select substr(version(),1,26) as "PostgreSQL-Version",_myrep.slonyversion();
PostgreSQL-Version | slonyversion
----------------------------+--------------
PostgreSQL 9.1.3 on x86_64 | 2.1.0
(1 row)
Anda dapat melihat versi slony saya telah ditingkatkan ke yang terbaru. Anda juga dapat melakukan pemeriksaan kesehatan pada skema dengan fungsi yang disediakan oleh Slony-I dalam dokumentasinya. Fungsi Pemeriksaan Kesehatan akan mengembalikan TRUE, jika tidak, katalog PG &Slony Anda rusak.
Tautan fungsi:http://slony.info/documentation/2.1/function.slon-node-health-check.html
postgres=# select node_health_check();
node_health_check
-------------------
t
(1 row)