बैकअप योजना:
1. मास्टर/दास की मौजूदा स्लोनी स्कीमा (_slonyschema) का बैकअप लें
2. पुराने स्लोनी बायनेरिज़ का बैकअप लें
3. बैकअप सभी प्रारंभ में स्लोनी कॉन्फ़िगरेशन फ़ाइलें बनाता है।
अपग्रेड प्रक्रिया:
1. सभी नोड्स पर चलने वाली स्लोन प्रक्रियाओं को रोकें।
2. Slony 2.1.x बायनेरिज़ का नया संस्करण स्थापित करें।
3. SLONIK अपग्रेडेशन स्क्रिप्ट निष्पादित करें
4. सभी नोड्स पर नए बायनेरिज़ के साथ स्लोनी शुरू करें।
लिंक:http://slony.info/documentation/2.1/slonyupgrad.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)
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
उन्नयन स्क्रिप्ट:
## 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).
स्क्रिप्ट निष्पादित करें:
-bash-4.1$ slonik upgrade_207_201.slonik
नई बायनेरिज़ के साथ स्लोनी प्रक्रिया शुरू करें और परिवर्तनों की जाँच करें।
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)
आप देख सकते हैं कि मेरे स्लोनी वर्जन को लेटेस्ट में अपग्रेड कर दिया गया है। आप Slony-I द्वारा उनके दस्तावेज़ में प्रदान किए गए फ़ंक्शन के साथ स्कीमा पर स्वास्थ्य जांच भी कर सकते हैं। स्वास्थ्य जांच फ़ंक्शन को TRUE लौटाना चाहिए, अन्यथा कहीं आपके PG और Slony कैटलॉग क्षतिग्रस्त हैं।
फ़ंक्शन लिंक:http://slony.info/documentation/2.1/function.slon-node-health-check.html
postgres=# select node_health_check();
node_health_check
-------------------
t
(1 row)