जबकि mysqldump
टूल मारियाडीबी या माईएसक्यूएल डेटाबेस या डेटाबेस सिस्टम के लिए पसंदीदा बैकअप विधि है, यह केवल तभी काम करता है जब डेटाबेस सर्वर पहुंच योग्य और चल रहा हो। यदि डेटाबेस प्रारंभ नहीं किया जा सकता है या होस्ट सिस्टम अप्राप्य है, तो डेटाबेस को अभी भी सीधे कॉपी किया जा सकता है।
एक भौतिक बैकअप अक्सर उन परिस्थितियों में आवश्यक होता है जब आपके पास केवल पुनर्प्राप्ति वातावरण (जैसे फ़िनिक्स) तक पहुंच होती है जहां आप अपने सिस्टम के डिस्क को बाहरी स्टोरेज डिवाइस के रूप में माउंट करते हैं। अगर आप तार्किक बैकअप के बारे में पढ़ना चाहते हैं mysqldump
. का उपयोग करके , विषय पर हमारा गाइड देखें।
सरलीकरण के लिए, इस गाइड में MySQL नाम का उपयोग किया जाएगा लेकिन निर्देश MySQL और MariaDB दोनों के लिए काम करेंगे।
नोट इस गाइड के चरणों के लिए रूट विशेषाधिकारों की आवश्यकता है। su -
. के साथ रूट यूजर के रूप में लॉग इन करें शुरू करने से पहले।
बैकअप बनाएं
-
यदि आप पुनर्प्राप्ति मोड (एक फ़िनिक्स सत्र) में नहीं चल रहे हैं, तो
mysql
. को रोकें सेवा:systemctl stop mysql
-
अपनी डेटाबेस निर्देशिका का पता लगाएँ। यह
/var/lib/mysql/
होना चाहिए अधिकांश सिस्टम पर लेकिन यदि वह निर्देशिका मौजूद नहीं है, तो/etc/mysql/my.cnf
की जांच करें डेटा निर्देशिका के पथ के लिए। -
अपने बैकअप स्टोर करने के लिए एक निर्देशिका बनाएं। यह मार्गदर्शिका
/opt/db-backups
. का उपयोग करेगी लेकिन आप इसे अपनी आवश्यकताओं के अनुरूप बदल सकते हैं:mkdir /opt/db-backups
-
MySQL की डेटा डायरेक्टरी को स्टोरेज लोकेशन पर कॉपी करें।
cp
कमांड,rsync
, या अन्य तरीके ठीक काम करेंगे, लेकिन हमtar
. का उपयोग करेंगे एक बार में बैकअप को रिकर्सिवली कॉपी और gzip करने के लिए। आवश्यकतानुसार डेटाबेस निर्देशिका, बैकअप फ़ाइल नाम और लक्ष्य निर्देशिका बदलें;-$(date +%F)
कमांड के अतिरिक्त फ़ाइल नाम में एक टाइमस्टैम्प सम्मिलित करेगा।tar cfvz /opt/db-backups/db-$(date +%F).tar.gz /var/lib/mysql/*
-
MySQL सेवा को पुनरारंभ करें:
systemctl restart mysql
बैकअप पुनर्स्थापित करें
-
अपनी कार्यशील निर्देशिका को उस स्थान पर बदलें जहाँ आप ऊपर बनाए गए टारबॉल को निकाल सकें। इस उदाहरण में वर्तमान उपयोगकर्ता की होम निर्देशिका का उपयोग किया गया है:
cd
-
बंद करो
mysql
सेवा:systemctl stop mysql
-
टारबॉल को कार्यशील निर्देशिका में निकालें। कमांड में टारबॉल के फ़ाइल नाम को उस तिथि के साथ बदलें जिसे आप पुनर्स्थापित करना चाहते हैं।
tar zxvf /opt/db-backups/db-archive.tar.gz -C .
-
/var/lib/mysql
. की वर्तमान सामग्री को स्थानांतरित करें किसी अन्य स्थान पर यदि आप उन्हें किसी भी कारण से रखना चाहते हैं, या उन्हें पूरी तरह से हटा देना चाहते हैं। एक नया खालीmysql
बनाएं आपके बैकअप किए गए DMBS को पुनर्स्थापित करने के लिए फ़ोल्डर।mv /var/lib/mysql /var/lib/mysql-old mkdir /var/lib/mysql
-
बैकअप किए गए डेटाबेस सिस्टम को खाली फ़ोल्डर में कॉपी करें:
mv ~/var/lib/mysql/* /var/lib/mysql
-
आपके द्वारा अभी-अभी पुनर्स्थापित की गई फ़ाइलों के लिए उचित अनुमतियाँ सेट करें:
chown -R mysql:mysql /var/lib/mysql
-
MySQL सेवा को पुनरारंभ करें:
systemctl restart mysql
अधिक जानकारी
आप इस विषय पर अतिरिक्त जानकारी के लिए निम्नलिखित संसाधनों से परामर्श करना चाह सकते हैं। हालांकि ये इस उम्मीद में प्रदान किए जाते हैं कि वे उपयोगी होंगे, कृपया ध्यान दें कि हम बाहरी रूप से होस्ट की गई सामग्री की सटीकता या समयबद्धता की पुष्टि नहीं कर सकते।
- बैकअप और पुनर्स्थापना अवलोकन; मारियाडीबी लाइब्रेरी
- डेटाबेस बैकअप के तरीके; MySQL संदर्भ मैनुअल