एक चरण-दर-चरण मार्गदर्शिका
-
एक बैकअप बनाएं . सुनिश्चित करें कि आपका डेटाबेस अपडेट नहीं हो रहा है।
pg_dumpall > outputfile
-
पोस्टग्रेज 10 इंस्टॉल करें . इस पेज पर दिए गए निर्देशों का पालन करें:https://www.postgresql.org/download/linux/ubuntu/
फिर
sudo apt-get install postgresql-10
run रन करें . पुराने संस्करण के साथ-साथ एक नया संस्करण स्थापित किया जाएगा। -
pg_lsclusters
चलाएं :Ver Cluster Port Status Owner Data directory Log file 9.6 main 5432 online postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log 10 main 5433 online postgres /var/lib/postgresql/10/main /var/log/postgresql/postgresql-10-main.log
पहले से ही एक क्लस्टर है
main
10 के लिए (चूंकि यह पैकेज स्थापना पर डिफ़ॉल्ट रूप से बनाया गया है)। ऐसा इसलिए किया जाता है ताकि एक नया इंस्टॉलेशन पहले क्लस्टर बनाने की आवश्यकता के बिना बॉक्स से बाहर काम करे, लेकिन निश्चित रूप से यह तब टकराता है जब आप9.6/main
को अपग्रेड करने का प्रयास करते हैं। जब10/main
भी मौजूद है। अनुशंसित प्रक्रिया 10 क्लस्टर कोpg_dropcluster
. के साथ निकालना है और फिरpg_upgradecluster
. के साथ अपग्रेड करें । -
10 क्लस्टर को रोकें और छोड़ें:
sudo pg_dropcluster 10 main --stop
-
डेटाबेस में लिखने वाली सभी प्रक्रियाओं और सेवाओं को रोकें। डेटाबेस बंद करें:
sudo systemctl stop postgresql
-
9.6 क्लस्टर अपग्रेड करें:
sudo pg_upgradecluster -m upgrade 9.6 main
-
PostgreSQL फिर से शुरू करें
sudo systemctl start postgresql
-
pg_lsclusters
चलाएं . आपका 9.6 क्लस्टर अब "डाउन" होना चाहिए, और 10 क्लस्टर5432
. पर ऑनलाइन होना चाहिए :Ver Cluster Port Status Owner Data directory Log file 9.6 main 5433 down postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log 10 main 5432 online postgres /var/lib/postgresql/10/main /var/log/postgresql/postgresql-10-main.log
-
पहले, जांचें कि सब कुछ ठीक काम करता है। उसके बाद, 9.6 क्लस्टर को हटा दें:
sudo pg_dropcluster 9.6 main --stop
pg_upgradecluster
पर कुछ नोट्स
यह मार्गदर्शिका 9.5 से 10.1 तक अपग्रेड करने के लिए ठीक काम करती है। पुराने संस्करण से अपग्रेड करते समय, -m upgrade
. को छोड़ने पर विचार करें चरण #6 पर:
sudo pg_upgradecluster 9.6 main
यदि आपके पास वास्तव में एक बड़ा क्लस्टर है, तो आप pg_upgradecluster
. का उपयोग कर सकते हैं एक --link
के साथ विकल्प, ताकि अपग्रेड यथास्थान हो सके। हालांकि, यह खतरनाक है — विफलता की स्थिति में आप क्लस्टर खो सकते हैं। यदि आवश्यक न हो तो बस इस विकल्प का उपयोग न करें, क्योंकि -m upgrade
पहले से ही काफी तेज है।
इस पर आधारित:
- दस्तावेज़:PostgreSQL क्लस्टर का उन्नयन
- Gist #1:delameko/upgrad-postgres-9.5-to-9.6.md
- जिस्ट #2:johanndt/upgrad-postgres-9.3-to-9.5.md
- यदि मैं
pg_upgradecluster
को बाधित या रद्द कर दूं तो क्या होगा? ? - pg_upgradcluster के लिए उबंटू मैनपेज
अपडेट करें
यह मार्गदर्शिका 9.6 से 11 और 10 से 11 तक और साथ ही 10 से 13 तक अपग्रेड करने के लिए ठीक काम करती है।