मैं Oracle VirtualBox पर Ubuntu 12.04 चला रहा हूं। कुछ महीने पहले, मैंने अपनी मशीन पर PostgreSQL सर्वर संस्करण 9.1 स्थापित किया। अभी हाल ही में, मुझे पता चला कि PostgreSQL सर्वर 9.3 JSON डेटा प्रकारों का समर्थन करता है, इसलिए मैंने अपग्रेड करने का निर्णय लिया।
मैंने यहां निर्देशों का पालन करते हुए 9.3 में अपग्रेड किया:
https://wiki.postgresql.org/wiki/Apt
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install postgresql-9.3 pgadmin3
यह संस्करण 9.1 के साथ मेरी मशीन पर सर्वर संस्करण 9.3 स्थापित है। एक ताजा बूट देने के बाद pg_lsclusters चलाना:
Ver Cluster Port Status Owner Data directory Log file
9.1 main 5433 online postgres /var/lib/postgresql/9.1/main /var/log/postgresql/postgresql-9.1-main.log
9.3 main 5432 online postgres /var/lib/postgresql/9.3/main /var/log/postgresql/postgresql-9.3-main.log
फिर मैंने निम्न पोस्ट-अपग्रेड रखरखाव किया: मैंने अपने 9.1 सर्वर से pg_dump के साथ कई तालिकाओं का निर्यात किया और उन्हें अपने 9.3 सर्वर पर पुनर्स्थापित किया। फिर मैंने 9.1 और 9.3 के लिए अपनी कॉन्फिग फाइल खोली /etc/postgresql/$VERSION/main/postgresql.conf
और उनके पोर्ट नंबरों को स्वैप किया ताकि मेरा psql क्लाइंट डिफॉल्ट रूप से नए सर्वर से कनेक्ट हो जाए।
मेरा सवाल यह है। 9.1 और 9.3 दोनों बूट पर शुरू होते हैं। मैं ऑटो बूटिंग से 9.1 को रोकना चाहूंगा, क्योंकि यह मेरे सिस्टम मेमोरी का लगभग 5% लेता है। मैं यह कैसे कर सकता हूँ?
संसाधनों से परामर्श:
एक सर्वर शुरू करने पर PostgreSQL डॉक्टर पृष्ठ मुझे मानक init.d निर्देशिका की ओर इशारा करता है। मेरी init.d निर्देशिका स्क्रिप्ट शामिल नहीं है postgresql
। ऐसा लगता है कि इस स्क्रिप्ट को केवल एक संस्करण लॉन्च करने के लिए कॉन्फ़िगर किया जा सकता है, लेकिन आवश्यक परिवर्तन मेरे लिए स्पष्ट नहीं है।
http://www.postgresql.org/docs/9.1/interactive/server-start.html
नीचे दी गई पोस्ट बहुत जानकारीपूर्ण थी, लेकिन यह दिखाता है कि क्लस्टर को कैसे हटाया जाए, न कि स्टार्टअप पर एक को कैसे निष्क्रिय किया जाए। मैं अपने पुराने क्लस्टर को स्थापित करना चाहूंगा, क्योंकि मैं इससे आगे की जानकारी प्राप्त करना चाहता हूं।
मैंने सिस्टम को लोड करने के बाद सर्वर को मारने के लिए एक स्क्रिप्ट लिखने पर विचार किया है, लेकिन यह अक्षम लगता है। क्या बूट पर संस्करण 9.1 को अक्षम करने के लिए एक क्लीनर तरीका है?