PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

Ubuntu 16.10 पर PostgreSQL को 9.6 से 10.0 तक अपग्रेड करें

एक चरण-दर-चरण मार्गदर्शिका

  1. एक बैकअप बनाएं . सुनिश्चित करें कि आपका डेटाबेस अपडेट नहीं हो रहा है।

     pg_dumpall > outputfile
    
  2. पोस्टग्रेज 10 इंस्टॉल करें . इस पेज पर दिए गए निर्देशों का पालन करें:https://www.postgresql.org/download/linux/ubuntu/

    फिर sudo apt-get install postgresql-10 run रन करें . पुराने संस्करण के साथ-साथ एक नया संस्करण स्थापित किया जाएगा।

  3. 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 . के साथ अपग्रेड करें ।

  4. 10 क्लस्टर को रोकें और छोड़ें:

     sudo pg_dropcluster 10 main --stop
    
  5. डेटाबेस में लिखने वाली सभी प्रक्रियाओं और सेवाओं को रोकें। डेटाबेस बंद करें:

     sudo systemctl stop postgresql 
    
  6. 9.6 क्लस्टर अपग्रेड करें:

     sudo pg_upgradecluster -m upgrade 9.6 main
    
  7. PostgreSQL फिर से शुरू करें

     sudo systemctl start postgresql
    
  8. 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. पहले, जांचें कि सब कुछ ठीक काम करता है। उसके बाद, 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 तक अपग्रेड करने के लिए ठीक काम करती है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं एएससीआईआई (आईएसओ/आईईसी 8859-1) से अपने रेल/पीजीएसक्यूएल डेटाबेस में डेटा कैसे आयात कर सकता हूं?

  2. लेन-देन के साथ अप्सर्ट

  3. पोस्टग्रेएसक्यूएल का बैकअप लेने के लिए बर्मन का उपयोग करना - एक सिंहावलोकन

  4. PostgreSQL में LISTAGG (Oracle डेटाबेस) के बराबर क्या है?

  5. लॉक की गई पंक्तियों की प्रतीक्षा से बचने के लिए एडवाइजरी लॉक या NOWAIT?