यह सबसे बुनियादी है, आप जिस mysqldump कमांड का उपयोग कर सकते हैं वह है:
mysqldump -u$user -p$pass -S $socket --all-databases > db_backup.sql
इसमें mysql डेटाबेस शामिल होगा, जिसमें सभी उपयोगकर्ता/निजी टेबल होंगे।
इसे उत्पादन प्रणाली पर चलाने में कमियां हैं क्योंकि यह लॉकिंग का कारण बन सकता है। यदि आपकी टेबल काफी छोटी हैं, तो इसका कोई महत्वपूर्ण प्रभाव नहीं हो सकता है। आप पहले इसका परीक्षण करना चाहेंगे।
हालाँकि, यदि आप एक शुद्ध InnoDB वातावरण चला रहे हैं, तो आप --single-transaction
का उपयोग कर सकते हैं ध्वज जो एक ही लेन-देन में डंप बनाएगा (इसे प्राप्त करें) इस प्रकार डेटाबेस पर लॉकिंग को रोकता है। ध्यान दें, ऐसे कोने के मामले हैं जहां प्रारंभिक FLUSH TABLES
डंप द्वारा चलाया जाने वाला कमांड टेबल को लॉक कर सकता है। यदि ऐसा है, तो डंप को मारें और इसे पुनरारंभ करें। मैं यह भी अनुशंसा करता हूं कि यदि आप बैकअप उद्देश्यों के लिए इसका उपयोग कर रहे हैं, तो --master-data
. का उपयोग करें ध्वज के साथ-साथ बाइनरी लॉग निर्देशांक प्राप्त करने के लिए जहां से डंप लिया गया था। इस तरह, यदि आपको पुनर्स्थापित करने की आवश्यकता है, तो आप डंप फ़ाइल आयात कर सकते हैं और फिर mysqlbinlog
का उपयोग कर सकते हैं बाइनरी लॉग फ़ाइलों को उस स्थान से फिर से चलाने का आदेश जहां यह डंप लिया गया था।