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

PostgreSQL के लिए क्लाउड बैकअप विकल्प

इस ब्लॉग को 11/27/18 और 11/29/18 को अपडेट किया गया था ताकि हमारे शानदार टिप्पणीकारों द्वारा सुझाए गए परिवर्तन किए जा सकें!

किसी व्यवसाय के किसी अन्य घटक की तरह, डेटाबेस इसके आंतरिक कार्यकलापों के लिए अत्यंत महत्वपूर्ण हैं।

चाहे वह व्यवसाय का मूल हो या सिर्फ एक अन्य घटक, डेटाबेस का नियमित रूप से बैकअप लिया जाना चाहिए, और भविष्य में संभावित पुनर्प्राप्ति के लिए सुरक्षित स्थानों में संग्रहीत किया जाना चाहिए।

क्या मुझे क्लाउड पर बैकअप लेना चाहिए?

एक सामान्य नियम यह है कि मूल्य की किसी भी चीज़ की कम से कम 3 प्रतियां हों और उन बैकअप को विभिन्न स्थानों पर संग्रहीत करें। यदि ड्राइव स्वयं मर जाती है तो उसी ड्राइव पर बैकअप बेकार हैं, होस्ट के नीचे जाने पर वही होस्ट बैकअप भी खतरे में हैं, और यदि बिल्डिंग जल जाती है (कठोर और असंभव, लेकिन संभव है) तो वही बिल्डिंग बैकअप भी खतरे में हैं।

क्लाउड बैकअप एक द्वितीयक स्थान पर नए हार्डवेयर को स्पिन किए बिना ऑफ-साइट बैकअप की आवश्यकता के लिए एक आसान समाधान प्रदान करते हैं। कई अलग-अलग क्लाउड सेवाएं हैं जो बैकअप स्टोरेज की पेशकश करती हैं, और सही को चुनना बैकअप आवश्यकताओं, आकार की आवश्यकताओं, लागत और सुरक्षा पर निर्भर करेगा।

क्लाउड बैकअप होने के कई लाभ हैं, लेकिन मुख्य रूप से इन बैकअप को मुख्य डेटाबेस से अलग स्थान पर संग्रहीत करने के इर्द-गिर्द घूमते हैं, जिससे हमें आपदा वसूली के मामले में सुरक्षा जाल की अनुमति मिलती है। हालांकि हम इन बैकअप विकल्पों में से प्रत्येक को सेट अप करने के तरीके के बारे में विस्तार से नहीं जाएंगे, हम बैकअप के लिए कुछ अलग विचारों और कॉन्फ़िगरेशन का पता लगाएंगे।

क्लाउड में बैकअप स्टोर करने में कुछ कमियां हैं, जो ट्रांसफर से शुरू होती हैं। यदि डेटाबेस के लिए बैकअप बहुत बड़े हैं, तो वास्तविक अपलोड करने में लंबा समय लग सकता है, और बैंडविड्थ हस्तांतरण के लिए क्लाउड सेवा शुल्क लेने पर लागत में वृद्धि भी हो सकती है। समय और लागत कम रखने के लिए संपीड़न का अत्यधिक सुझाव दिया जाता है।

क्लाउड में बैकअप की मेजबानी के साथ सुरक्षा एक और चिंता का विषय हो सकता है, जबकि कुछ कंपनियों के पास सख्त दिशानिर्देश हैं जहां उनका डेटा संग्रहीत और मौजूद है। यदि सुरक्षा एक चिंता का विषय है, तो किसी भी बैकअप को क्लाउड होस्टिंग सेवा में निर्यात करने से पहले एन्क्रिप्ट किया जा सकता है।

क्लाउड बैकअप विकल्प

PostgreSQL के लिए डेटाबेस बैकअप बनाने के कई अलग-अलग तरीके हैं, और बैकअप के प्रकार के आधार पर, पुनर्प्राप्ति समय, आकार और बुनियादी ढांचे के विकल्प अलग-अलग होंगे। चूंकि कई क्लाउड स्टोरेज समाधान केवल अलग-अलग एपीआई फ्रंट एंड के साथ स्टोरेज होते हैं, इसलिए किसी भी चतुर बैकअप समाधान को थोड़ी सी स्क्रिप्टिंग के साथ बनाया जा सकता है।

स्नैपशॉट बैकअप

स्नैपशॉट बैकअप होते हैं जिनमें एक विशिष्ट समय पर PostgreSQL डेटाबेस की एक प्रति होती है। ये बैकअप या तो pg_dump का उपयोग करके बनाए जाते हैं, जो डेटाबेस को केवल एक फ़ाइल में डंप करता है, या PostgreSQL के लिए आधार डेटा निर्देशिका की प्रतिलिपि बनाकर। इनमें से किसी को भी संपीड़ित किया जा सकता है, अन्य ड्राइव और सर्वर पर कॉपी किया जा सकता है, और वांछित क्लाउड स्टोरेज विकल्प में कॉपी किया जा सकता है।

संपीड़न के साथ pg_dump का उपयोग करना

pg_dump -Fc severalnines > severalnines.dmp

pg_basebackup का उपयोग करके डेटा निर्देशिका बैकअप

प्रोग्राम pg_basebackup का उपयोग बेस बैकअप बनाने के लिए बहुत आसानी से किया जा सकता है। सभी सुविधाओं और इसे सेट अप करने के तरीके के बारे में अधिक जानकारी के लिए, उपयोग किए जा रहे PostgreSQL के संस्करण के आधिकारिक दस्तावेज़ीकरण पर जाएं।

pg_basebackup --format=tar -z -D severalnines_basebackup

अमेज़ॅन S3

Amazon के AWS प्लेटफॉर्म के साथ, S3 एक डेटा स्टोरेज सेवा है जिसका उपयोग डेटाबेस बैकअप को स्टोर करने के लिए किया जा सकता है। जबकि बैकअप वेब इंटरफेस के माध्यम से अपलोड किए जा सकते हैं, अमेज़ॅन सीएलआई (कमांड लाइन इंटरफेस) का उपयोग कमांड लाइन से और बैकअप ऑटोमेशन स्क्रिप्ट के माध्यम से करने के लिए किया जा सकता है। एडब्ल्यूएस सीएलआई के बारे में जानकारी यहां मिल सकती है। यदि बैकअप को बहुत लंबे समय तक रखा जाना है, और पुनर्प्राप्ति समय कोई चिंता का विषय नहीं है, तो बैकअप को अमेज़ॅन की ग्लेशियर सेवा में स्थानांतरित किया जा सकता है, जो बहुत सस्ता दीर्घकालिक भंडारण प्रदान करता है।

aws s3 cp severalnines.dmp s3://severalninesbucket/backups

अमेज़ॅन के पास दुनिया भर में अपनी सेवाओं के लिए अलग-अलग क्षेत्र भी हैं। भले ही उनके पास एक अच्छा अपटाइम इतिहास है, कई क्षेत्रों में बैकअप की प्रतियां फैलाने से आपदा वसूली विकल्प बढ़ जाते हैं, और मूल्यवान डेटा खोने की संभावना कम हो जाती है।

Microsoft Azure संग्रहण

Microsoft के क्लाउड प्लेटफ़ॉर्म, Azure में अपने स्वयं के कमांड लाइन इंटरफ़ेस के साथ भंडारण विकल्प हैं, जानकारी यहाँ पाई जा सकती है।

az storage blob upload --container-name severalnines --file severalnines.dmp --name severalnines_backup

किसी भी अन्य आधुनिक क्लाउड स्टोरेज सेवाओं को अपने क्लाउड सर्वर पर बैकअप कॉपी करने के लिए समान टूल की पेशकश करनी चाहिए, विवरण के लिए उनके दस्तावेज़ देखें।

स्टैंडबाय बैकअप

कभी-कभी बैकअप स्वयं बहुत बड़ा हो सकता है, भले ही संपीड़ित हो, और क्लाउड सेवा में दैनिक या साप्ताहिक बैकअप अपलोड करना बैंडविड्थ गति और/या लागतों के कारण प्रश्न से बाहर हो सकता है। इसलिए सुरक्षित रखने के लिए क्लाउड में बैकअप लेना बहुत कठिन है।

ऐसा करने का एक तरीका क्लाउड आधारित वर्चुअल मशीन में गर्म या गर्म स्टैंडबाय चलाना है, जैसे कि अमेज़ॅन का ईसी 2 इंस्टेंस, जहां यह मुख्य मास्टर डेटाबेस की एक सटीक प्रति है, और क्लाउड इंस्टेंस को भेजा जाने वाला एकमात्र डेटा है संपूर्ण डेटाबेस की एक और प्रति के बजाय कोई भी परिवर्तन है। इसके लिए एक बार में पूरे डेटाबेस को स्थानांतरित करने की आवश्यकता होगी, लेकिन उसके बाद, केवल परिवर्तनों को स्थानांतरित करने की आवश्यकता है।

लेकिन क्या एक स्टैंडबाय सर्वर वास्तव में एक बैकअप है? यदि मास्टर डेटाबेस नीचे चला जाता है, तो स्टैंडबाय को मास्टर में बदल दिया जा सकता है और अनुप्रयोगों को उस पर पुनर्निर्देशित किया जा सकता है, हालांकि, यदि लक्ष्य पिछले सप्ताह / महीनों में एक निश्चित समय के लिए बैकअप रखना है, तो यह काम नहीं करेगा।

इसे ठीक करने के लिए कई चीजें की जा सकती हैं। उदाहरण के लिए, स्टैंडबाय को ही देरी के लिए मजबूर किया जा सकता है, उदाहरण के लिए केवल एक दिन पुराना डेटा अंतर्ग्रहण करना। दूसरा क्लाउड स्टैंडबाय पर पारंपरिक तरीकों (pg_dump, डेटा निर्देशिका प्रतिलिपि) में से एक में बैकअप बनाना है, जिसका अर्थ है कि इन बैकअप को नेटवर्क पर स्थानांतरित करने की आवश्यकता नहीं होगी क्योंकि वे क्लाउड मशीन पर ही बनाए जा रहे हैं। इन-नेटवर्क स्थानांतरण आमतौर पर तेज़ और सस्ते होते हैं।

ClusterControl बैकअप और क्लाउड

कईनेन्स ने क्लस्टरकंट्रोल बनाया, एक डेटाबेस प्रबंधन प्रणाली जो पोस्टग्रेएसक्यूएल सहित कई अलग-अलग डेटाबेस को प्रबंधित करने में मदद करती है। यह किसी भी डेटाबेस या सिस्टम एडमिनिस्ट्रेटर के लिए अपने डेटाबेस पर पूर्ण नियंत्रण और दृश्यता रखने के लिए एक अंतिम टूलबॉक्स है, और इसमें बहुत आसान बैकअप सुविधाएं शामिल हैं।

ClusterControl के साथ, PostgreSQL डेटाबेस के बैकअप को आसानी से प्रबंधित, शेड्यूल किया जा सकता है, और Amazon S3, Microsoft Azure और Google क्लाउड सहित "क्लाउड स्टोरेज" सेवाओं के लिए किए गए बैकअप को स्वचालित रूप से कॉपी करने के लिए सेट किया जा सकता है। इससे क्लाउड पर बैकअप अपलोड करने के लिए कस्टम टूल्स को स्क्रिप्ट करने की आवश्यकता नहीं होती है, साथ ही सामान्य रूप से बैकअप के लिए एक अच्छा यूजर इंटरफेस भी मिलता है।

हमारे डेटाबेस का बैकअप हमेशा होना चाहिए, और उन्हें दूसरे, तीसरे और चौथे स्थान पर संग्रहीत करना एक बहुत अच्छा और सामान्य अभ्यास है। क्लाउड विकल्प में फेंकने से आपदा पुनर्प्राप्ति विकल्प बढ़ जाते हैं, और एक व्यवसाय के लिए बैक एंड स्थिरता की एक और परत डाल दी जाती है, जहां कई मामलों में यदि डेटाबेस गायब हो जाता है, तो कंपनी गायब हो जाती है। आज क्लाउड बैकअप विकल्प तलाशने से कल की आपदा समाप्त हो सकती है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL क्वेरी में बड़ी वस्तु का आकार प्राप्त करें?

  2. PostgreSQL:अद्वितीय उल्लंघन:7 त्रुटि:डुप्लिकेट कुंजी मान अद्वितीय बाधा का उल्लंघन करता है users_pkey

  3. किसी अन्य चयन से लौटाई गई पंक्तियों की संख्या के आधार पर ऑर्डर करने की क्वेरी

  4. कैसे POSITION () PostgreSQL में काम करता है

  5. JPA में अपवाद PostgreSQL के लिए बीज फ़ाइल का उपयोग करते समय