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

Percona XtraBackup की तुलना MySQL एंटरप्राइज़ बैकअप से करना:भाग एक

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

MySQL डेटाबेस का बैकअप लेने के कई तरीके हैं, लेकिन हम इन विधियों को दो समूहों में विभाजित कर सकते हैं - तार्किक और भौतिक।

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

लॉजिकल बैकअप करना आसान है, केवल एक-लाइनर के साथ, आप उदाहरण में अपने सभी टेबल, डेटाबेस या सभी mysql डेटाबेस का बैकअप ले सकते हैं।

दुर्भाग्य से, तार्किक बैकअप की कई सीमाएँ होती हैं। वे आमतौर पर एक भौतिक की तुलना में धीमे होते हैं। यह डेटा को बाहर निकालने के लिए SQL कमांड को निष्पादित करने के लिए आवश्यक ओवरहेड के कारण है और फिर डेटा को डेटाबेस में वापस लाने के लिए SQL कमांड के दूसरे सेट को निष्पादित करने के लिए है। वे कम लचीले होते हैं, जब तक कि आप जटिल बैकअप वर्कलोड नहीं लिखते हैं जिसमें कई चरण शामिल होंगे। यह समानांतर वातावरण में अच्छी तरह से काम नहीं करता है, कम सुरक्षा प्रदान करता है, इत्यादि इत्यादि।

MySQL वर्ल्ड में भौतिक बैकअप

MySQL सामुदायिक संस्करण के लिए ऑनलाइन भौतिक बैकअप के साथ नहीं आता है। आप या तो एंटरप्राइज़ संस्करण के लिए भुगतान कर सकते हैं या किसी तृतीय-पक्ष टूल का उपयोग कर सकते हैं। बाज़ार में सबसे लोकप्रिय तृतीय-पक्ष टूल XtraBackup है। जिनकी हम इस ब्लॉग लेख में तुलना करने जा रहे हैं।

Percona XtraBackup बहुत लोकप्रिय, ओपन-सोर्स, MySQL/MariaDB हॉट बैकअप सॉफ़्टवेयर है जो InnoDB और XtraDB डेटाबेस के लिए नॉन-ब्लॉकिंग बैकअप करता है। यह भौतिक बैकअप श्रेणी में आता है, जिसमें MySQL डेटा निर्देशिका की सटीक प्रतियां और इसके नीचे की फ़ाइलें शामिल हैं।

XtraBackup के सबसे बड़े लाभों में से एक यह है कि यह बैकअप प्रक्रिया के दौरान आपके डेटाबेस को लॉक नहीं करता है। बड़े डेटाबेस (100+ GB) के लिए, यह mysqldump की तुलना में बहुत बेहतर पुनर्स्थापना समय प्रदान करता है। पुनर्स्थापना प्रक्रिया में लक्ष्य नोड पर वर्तमान डेटा निर्देशिका के साथ बदलने या स्विच करने से पहले, बैकअप फ़ाइलों से MySQL डेटा तैयार करना शामिल है।

Percona XtraBackup शुरू होने पर लॉग अनुक्रम संख्या (LSN) को याद करके काम करता है और फिर डेटा फ़ाइलों को किसी अन्य स्थान पर कॉपी करता है। डेटा की प्रतिलिपि बनाने में समय लगता है, और यदि फ़ाइलें बदल रही हैं, तो वे समय के विभिन्न बिंदुओं पर डेटाबेस की स्थिति को दर्शाती हैं। उसी समय, XtraBackup एक पृष्ठभूमि प्रक्रिया चलाता है जो लेन-देन लॉग (उर्फ रीडो लॉग) फ़ाइलों पर नज़र रखता है, और उसमें से परिवर्तनों की प्रतिलिपि बनाता है। यह लगातार किया जाना चाहिए क्योंकि लेन-देन लॉग एक राउंड-रॉबिन फैशन में लिखे गए हैं, और थोड़ी देर के बाद पुन:उपयोग किए जा सकते हैं। XtraBackup को निष्पादन शुरू होने के बाद से डेटा फ़ाइलों में प्रत्येक परिवर्तन के लिए लेन-देन लॉग रिकॉर्ड की आवश्यकता है।

इस टूल का उपयोग करके आप यह कर सकते हैं:

  • हॉट InnoDB बैकअप बनाएं, जो आपके डेटाबेस को रोके बिना या सर्वर पर लोड जोड़े बिना जल्दी और मज़बूती से पूरा करें
  • वृद्धिशील बैकअप बनाएं
  • टेबल को MySQL सर्वर के बीच ऑनलाइन ले जाएं
  • नए MySQL प्रतिकृति दास आसानी से बनाएं
  • संपीड़ित MySQL बैकअप को दूसरे सर्वर पर स्ट्रीम करें
  • डिस्क स्थान और नेटवर्क बैंडविड्थ को बचाएं

MySQL एंटरप्राइज बैकअप कई प्लेटफॉर्म पर हॉट, ऑनलाइन, नॉन-ब्लॉकिंग बैकअप डिलीवर करता है। यह एक मुफ्त बैकअप टूल नहीं है, लेकिन यह बहुत सारी सुविधाएँ प्रदान करता है। मानक लाइसेंस लागत $5000 है (लेकिन Oracle के साथ आपके अनुबंध पर भिन्न हो सकती है।) 

बैकअप प्रक्रिया समर्थित प्लैटफ़ॉर्म

MySQL एंटरप्राइज

यह Linux, Windows, Mac और Solaris पर चल सकता है। जो आवश्यक है वह टेप से बैकअप भी स्टोर कर सकता है, जो आमतौर पर डिस्क पर लिखने की तुलना में एक सस्ता समाधान है। डायरेक्ट टेप राइट्स वेरिटास नेटबैकअप, टिवोली स्टोरेज मैनेजर और ईएमसी नेटवर्कर के साथ एकीकरण का समर्थन करता है।

अतिरिक्त बैकअप

XtraBackup केवल Linux प्लेटफॉर्म पर चल सकता है, जो निस्संदेह विंडोज़ पर चलने वालों के लिए शो स्टॉपर हो सकता है। यहां एक समाधान शायद लिनक्स पर चल रहे दास की प्रतिकृति और वहां से बैकअप चला रहा है।

बैकअप प्रक्रिया में मुख्य अंतर

MySQL एंटरप्राइज बैकअप बैक और रिकवरी सुविधाओं और कार्यक्षमता का एक समृद्ध सेट प्रदान करता है जिसमें मौजूदा MySQL बैकअप विधियों पर महत्वपूर्ण प्रदर्शन सुधार शामिल हैं।

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

--compress

संपीड़ित प्रारूप में बैकअप बनाता है। नियमित बैकअप के लिए, MySQL द्वारा समर्थित सभी स्टोरेज इंजनों के बीच, केवल InnoDB प्रारूप की डेटा फ़ाइलें संपीड़ित होती हैं, और वे संपीड़न के बाद .ibz एक्सटेंशन को सहन करते हैं। इसी तरह, सिंगल-इमेज बैकअप के लिए, बैकअप इमेज के अंदर केवल InnoDB फॉर्मेट की डेटा फाइल्स को कंप्रेस किया जाता है। बाइनरी लॉग और रिले लॉग फ़ाइलें संपीड़ित बैकअप में शामिल किए जाने पर .bz एक्सटेंशन के साथ संपीड़ित और सहेजी जाती हैं।

-compress-method=zlib,lz4(default), lzma, punch-hole

--compress-level=LEVEL(0-9)

--include-tables=REGEXP

ClusterControl के साथ MySQL बैकअप

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

ClusterControl मिश्रित वातावरण वाले उपयोगकर्ताओं के लिए सभी समावेशी ओपन सोर्स डेटाबेस प्रबंधन प्रणाली है। यह MySQL या MariaDB के लिए उन्नत बैकअप प्रबंधन कार्यक्षमता प्रदान करता है।

ClusterControl से आप यह कर सकते हैं:

  • बैकअप नीतियां बनाएं
  • बैकअप की स्थिति, निष्पादन और बिना बैकअप के सर्वर की निगरानी करें
  • बैकअप और पुनर्स्थापना निष्पादित करें (समय पुनर्प्राप्ति में एक बिंदु सहित)
  • बैकअप प्रतिधारण को नियंत्रित करें
  • बैकअप को क्लाउड स्टोरेज में सेव करें
  • बैकअप सत्यापित करें (स्टैंडअलोन सर्वर पर पुनर्स्थापना के साथ पूर्ण परीक्षण)
  • बैकअप एन्क्रिप्ट करें
  • बैकअप को कंप्रेस करें
  • और कई अन्य

निष्कर्ष

एक DBA के रूप में, आपको यह सुनिश्चित करने की आवश्यकता है कि डेटाबेस का नियमित रूप से बैकअप लिया जाता है, और उचित पुनर्प्राप्ति प्रक्रियाएं लागू और परीक्षण की जाती हैं। Percona XtraBackup और MySQL Enterprise बैकअप दोनों DBA को एक उच्च-प्रदर्शन, डेटा संपीड़न और एन्क्रिप्शन तकनीक के साथ ऑनलाइन बैकअप समाधान प्रदान करते हैं ताकि आपके डेटा को डाउनटाइम या आउटेज की स्थिति में सुरक्षित रखा जा सके

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

यह सब पहले भाग के लिए है, अगले भाग में हम दोनों समाधानों के प्रदर्शन का परीक्षण करने जा रहे हैं और कुछ वास्तविक केस बैकअप और पुनर्प्राप्ति परिदृश्य चलाएंगे।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में प्राकृतिक छँटाई

  2. SYSDATE () उदाहरण – MySQL

  3. बिना किसी परवाह किए IN मान के लिए डिफ़ॉल्ट परिणाम लौटाएं

  4. MySQL में यूनिक आईडी कैसे जनरेट करें?

  5. MySQL में दो कॉलम के प्रतिशत की गणना कैसे करें