यह आलेख वर्णन करता है कि क्रॉन जॉब कैसे सेट किया जाए जो विशिष्ट अंतराल पर एक फ़ाइल में स्वचालित रूप से एक MySQL डेटाबेस का बैक अप लेता है।
क्रॉन जॉब्स का उपयोग करके स्वचालित डेटाबेस बैकअप
क्रॉन जॉब चलाने के दो तरीके हैं जो एक MySQL डेटाबेस का बैकअप लेते हैं। आप या तो क्रॉन जॉब कमांड में MySQL लॉगिन जानकारी शामिल कर सकते हैं, या आप MySQL लॉगिन जानकारी को स्टोर करने के लिए कॉन्फ़िगरेशन फ़ाइल का उपयोग कर सकते हैं।
विधि #1:क्रॉन जॉब कमांड में MySQL लॉगिन जानकारी शामिल करें
आप एक क्रॉन जॉब बनाकर MySQL डेटाबेस का शेड्यूल्ड बैकअप चला सकते हैं जो निम्न कमांड चलाता है:
/usr/bin/mysqldump --routines -u dbusername -p'dbpassword' dbname > ${HOME}/path/backup.sql
डेटाबेस उपयोगकर्ता के साथ dbusername बदलें, डेटाबेस उपयोगकर्ता के पासवर्ड के साथ dbpassword, बैकअप के लिए डेटाबेस के साथ dbname, और उस पथ के साथ पथ जहां आप बैकअप फ़ाइल संग्रहीत करना चाहते हैं। यह उदाहरण backup.sql . का उपयोग करता है बैकअप के फ़ाइल नाम के लिए, लेकिन आप अपने इच्छित किसी भी फ़ाइल नाम का उपयोग कर सकते हैं।
- पासवर्ड के चारों ओर एकल उद्धरण (') वर्ण यह सुनिश्चित करते हैं कि कोई भी विशेष वर्ण सही ढंग से संसाधित हो।
- जब आदेश सफलतापूर्वक चलता है, तो कोई आउटपुट उत्पन्न नहीं होता है। हालाँकि, यदि कोई त्रुटि या गलत कॉन्फ़िगरेशन है, तो आपके खाता कॉन्फ़िगरेशन के आधार पर आपको एक ई-मेल संदेश प्राप्त हो सकता है जिसमें कमांड आउटपुट होता है। आदेश के विफल होने पर ई-मेल संदेशों को दबाने के लिए, निम्न पाठ को क्रॉन जॉब कमांड के अंत में जोड़ें:
2>/dev/null
हालांकि, अधिकांश लोग क्रोन जॉब के विफल होने पर सूचित होना चाहते हैं।
क्रॉन जॉब बनाने के लिए cPanel का उपयोग करने के तरीके के बारे में जानकारी के लिए, कृपया यह लेख देखें।
विधि #2:MySQL लॉगिन जानकारी संग्रहीत करने के लिए कॉन्फ़िगरेशन फ़ाइल का उपयोग करें
वैकल्पिक रूप से, आप अपनी होम निर्देशिका में एक कॉन्फ़िगरेशन फ़ाइल बना सकते हैं जो MySQL लॉगिन जानकारी संग्रहीत करती है। इस पद्धति का उपयोग करते हुए, आपको अपने क्रॉन जॉब कमांड में लॉगिन जानकारी शामिल करने की आवश्यकता नहीं है। ऐसा करने के लिए, इन चरणों का पालन करें:
- .my.cnf . नाम की एक फ़ाइल बनाएं आपके /घर/ . में उपयोगकर्ता नाम निर्देशिका, उपयोगकर्ता नाम को अपने खाते के उपयोगकर्ता नाम से बदल रही है। सुनिश्चित करें कि आपने प्रमुख शामिल किया है। फ़ाइल नाम में।
- निम्न पाठ को .my.cnf . में कॉपी और पेस्ट करें फ़ाइल। डेटाबेस उपयोगकर्ता के साथ dbusername बदलें और dbpassword को डेटाबेस उपयोगकर्ता के पासवर्ड से बदलें:
[client] user = dbusername password = "dbpassword" host = localhost
-
एक क्रॉन जॉब बनाएं जो निम्न कमांड चलाता है। बैक अप लेने के लिए dbname को डेटाबेस के नाम से बदलें, और बैकअप फ़ाइल को संग्रहीत करने के लिए पथ को पथ से बदलें। यह उदाहरण backup.sql . का उपयोग करता है बैकअप के फ़ाइल नाम के लिए, लेकिन आप अपने इच्छित किसी भी फ़ाइल नाम का उपयोग कर सकते हैं:
mysqldump --routines dbname > /path/backup.sql
जब आदेश सफलतापूर्वक चलता है, तो कोई आउटपुट उत्पन्न नहीं होता है। हालाँकि, यदि कोई त्रुटि या गलत कॉन्फ़िगरेशन है, तो आपके खाता कॉन्फ़िगरेशन के आधार पर आपको एक ई-मेल संदेश प्राप्त हो सकता है जिसमें कमांड आउटपुट होता है। आदेश विफल होने पर ई-मेल संदेशों को दबाने के लिए, निम्न पाठ को क्रॉन जॉब कमांड के अंत में जोड़ें:
2>/dev/null
हालांकि, अधिकांश लोग क्रोन जॉब के विफल होने पर सूचित होना चाहते हैं।
क्रॉन जॉब बनाने के लिए cPanel का उपयोग करने के तरीके के बारे में जानकारी के लिए, कृपया यह लेख देखें।
अधिक जानकारी
mysqldump . के बारे में अधिक जानकारी के लिए कार्यक्रम, कृपया http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html पर जाएं।