मेरे पास बहुत बड़े डेटाबेस हैं जिनमें हजारों टेबल हैं, जिनमें से कुछ में 10 से लाखों प्रविष्टियों में 5GB तक डेटा है। (मैं एक लोकप्रिय सेवा चलाता हूं)... इन डेटाबेस का बैकअप लेते समय मुझे हमेशा सिरदर्द होता है। डिफ़ॉल्ट mysqldump का उपयोग करके यह जल्दी से सर्वर लोड को नियंत्रण से बाहर कर देता है और सब कुछ लॉक कर देता है ... मेरे उपयोगकर्ताओं को प्रभावित करता है। प्रक्रिया को रोकने की कोशिश करने से उन तालिकाओं की पुनर्प्राप्ति के दौरान क्रैश हो चुकी तालिकाएँ और बहुत सारे डाउनटाइम हो सकते हैं।
मैं अब उपयोग करता हूं...
mysqldump -u USER -p --single-transaction --quick --lock-tables=false DATABASE | gzip > OUTPUT.gz
mysqldump संदर्भ dev.mysql.com पर भी कहते हैं...
इस बारे में कुछ नहीं कहते हैं कि डेटाबेस पर निर्भर होने के कारण InnoDB, मेरा myISAM है और इसने मेरे लिए खूबसूरती से काम किया। सर्वर लोड लगभग पूरी तरह से अप्रभावित था और मेरी सेवा पूरी प्रक्रिया के दौरान रोलेक्स की तरह चलती रही। यदि आपके पास बड़े डेटाबेस हैं और उनका बैकअप लेना आपके अंतिम उपयोगकर्ता को प्रभावित कर रहा है... यह समाधान है।;)