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

MySQL या MariaDB डेटाबेस निर्यात करें

परियोजना को जीवंत बनाने के बाद नियमित आधार पर डेटाबेस बैकअप लेना महत्वपूर्ण चरणों में से एक है। बैकअप आवृत्ति दिन या सप्ताह में एक बार हो सकती है। उन अनुप्रयोगों के लिए दैनिक बैकअप को प्राथमिकता दी जाती है जिनमें डेटाबेस परिवर्तन अधिक बार होते हैं। उच्च उपलब्धता वाले डेटाबेस के मामले में, ऊर्ध्वाधर स्केलिंग के बजाय उपयुक्त क्लस्टर सेटअप पर विचार किया जाना चाहिए। यह ट्यूटोरियल mysqldump के उपयोग के बारे में बताता है। डेटाबेस बैकअप लेने के लिए आदेश। अनुसूचित बैकअप लेने के लिए उसी आदेश को स्वचालित किया जा सकता है।

नोट :इस ट्यूटोरियल में केवल mysqldump के साथ उपयोग किए जाने वाले सबसे सामान्य विकल्पों को शामिल किया गया है। आज्ञा। आप सभी संभावित विकल्पों का पता लगाने के लिए आधिकारिक दस्तावेज़ीकरण का भी उल्लेख कर सकते हैं। MySQL और MariaDB डेटाबेस सर्वर दोनों का बैकअप लेने के लिए समान कमांड का उपयोग किया जा सकता है।

स्थानीय बैकअप

बैकअप - यह खंड एकल या एकाधिक डेटाबेस निर्यात करके फ़ाइल में स्थानीय बैकअप लेने की व्याख्या करता है।

अनुमतियां - mysqldump डेटाबेस को निर्यात करने के लिए नीचे सूचीबद्ध विशेषाधिकारों की आवश्यकता है। डेटाबेस को निर्यात करने के लिए उपयोग किए जाने वाले उपयोगकर्ता खाते को उपयुक्त विशेषाधिकार दिए जाने चाहिए।

  • चुनें - टेबल डंप करने के लिए
  • दृश्य दिखाएं - दृश्य डंप करने के लिए
  • TRIGGER - ट्रिगर डंप करने के लिए
  • LOCK TABLES - यदि --एकल-लेनदेन विकल्प का उपयोग नहीं किया जाता है

कमांड - नीचे उल्लिखित mysqldump का उपयोग है उबंटू सहित विंडोज और लिनक्स आधारित सिस्टम दोनों के लिए स्थानीय बैकअप लेने का आदेश। ट्रिपल डॉट्स का अर्थ है कि कई मान प्रदान किए जा सकते हैं।

# Regular command - Usage - Windows, Linux
mysqldump [options] db_name [tbl_name ...] > <file path>
mysqldump [options] --databases db_name ... > <file path>
mysqldump [options] --all-databases > <file path>

नियमित कमांड का उपयोग करने के उदाहरण नीचे दिए गए हैं। ये उदाहरण आदेश उपयोगकर्ता उद्यम . का उपयोग कर रहे हैं डेटाबेस का बैकअप लेने के लिए उद्यम . यदि उपयोगकर्ता खाता auth_socket . का उपयोग कर रहा है तो उपयोगकर्ता और पासवर्ड निर्दिष्ट करने की कोई आवश्यकता नहीं है MySQL सर्वर में लॉग इन करने के लिए एल्गोरिथम। सिस्टम उपयोगकर्ता सीधे डेटाबेस तक पहुंच सकता है। आप पासवर्ड एल्गोरिदम के बारे में अधिक जानने के लिए MySQL 5.7 के साथ मूल पासवर्ड का उपयोग कैसे करें और उबंटू पर MySQL 8 कैसे स्थापित करें, इसका उल्लेख कर सकते हैं।

नोट :यदि उपयोगकर्ता को कोई पासवर्ड नहीं दिया जाता है, तो विकल्प -p का उपयोग करने की कोई आवश्यकता नहीं है।

उपयोगकर्ता नाम, होस्ट और पोर्ट के साथ एकल डेटाबेस का बैकअप लेने के उदाहरण नीचे दिए गए हैं। पासवर्ड प्रदान नहीं किया जाना चाहिए सुरक्षा उद्देश्यों के लिए इन आदेशों के साथ। आप mysqldump के लिए पासवर्ड निर्दिष्ट कर सकते हैं कॉन्फ़िगरेशन फ़ाइल में जिसे cron के लिए एक सुरक्षित विकल्प माना जाता है। नौकरियां। एक अन्य विकल्प है कैट कमांड का उपयोग एन्क्रिप्टेड पासवर्ड का उपयोग करने के लिए (जैसा कि Plesk उपयोग कर रहा है) जैसा कि उदाहरणों में दिखाया गया है। यदि यह कमांड के भीतर प्रदान नहीं किया गया है तो सिस्टम पासवर्ड के लिए संकेत देगा। इन आदेशों का उपयोग या तो संपूर्ण डेटाबेस या एकल या एकाधिक तालिकाओं को निर्यात करने के लिए किया जा सकता है।

# All tables - with username, without password - prompts for password
mysqldump -u enterprise -p enterprise > enterprise.sql

# All tables - with username, with password - insecure
mysqldump -u enterprise -p'mypwd' enterprise > enterprise.sql

# All tables - with username, with password - Plesk way
mysqldump -u enterprise -p`cat /etc/psa/.psa.shadow` dbname > dbname.sql

# All tables - with host, with port, with username, without password - prompts for password
mysqldump -h localhost -p 3306 -u enterprise -p enterprise > enterprise.sql

# Single table(user) - with username, without password - prompts for password
mysqldump -u enterprise -p enterprise [user] > enterprise.sql

# Multiple tables(user, profile) - with username, without password - prompts for password
mysqldump -u enterprise -p enterprise user profile > enterprise.sql

उपयोगकर्ता नाम, होस्ट और पोर्ट के साथ कई डेटाबेस का बैकअप लेने के उदाहरण नीचे दिए गए हैं।

# Multiple databases - with username, without password - prompts for password
mysqldump -u enterprise -p --databases enterprise vblog mshop > mydbs.sql

# Multiple databases - with username, with password
mysqldump -u enterprise -p'mypwd' --databases enterprise vblog mshop > mydbs.sql

उपयोगकर्ता नाम, होस्ट और पोर्ट के साथ सभी डेटाबेस का बैकअप लेने का उदाहरण नीचे दिया गया है।

# All databases - with username, without password - prompts for password
mysqldump -u enterprise -p --all-databases > mydbs.sql

# All databases - with username, with password
mysqldump -u enterprise -p'mypwd' --all-databases > mydbs.sql

विंडोज़ पर पावरशेल उपयोगकर्ताओं को नीचे बताए अनुसार अलग कमांड की आवश्यकता होगी।

# PowerShell on Windows
shell> mysqldump [options] db_name [tbl_name ...] --result-file=<file path>
shell> mysqldump [options] --databases db_name ... --result-file=<file path>
shell> mysqldump [options] --all-databases --result-file=<file path>

# Example
shell> mysqldump -u enterprise -p enterprise --result-file=mydump.sql

उपर्युक्त आदेश चयनित डेटाबेस और तालिकाओं को कमांड में निर्दिष्ट फ़ाइल स्थान पर निर्यात करेंगे।

डेटाबेस बैकअप

यह खंड डेटाबेस बैकअप को शेल पाइप्स का उपयोग करके बैकअप उद्देश्य के लिए उपयोग किए जाने वाले किसी अन्य डेटाबेस में ले जाने के बारे में बताता है। हम या तो डेटाबेस को स्थानीय फ़ाइल में निर्यात कर सकते हैं और फिर इस फ़ाइल का उपयोग किसी अन्य डेटाबेस में आयात करने के लिए कर सकते हैं या सीधे शेल पाइप का उपयोग करके किसी अन्य डेटाबेस में निर्यात कर सकते हैं।

नीचे दिए गए कमांड का उपयोग डेटाबेस को सीधे दूसरे डेटाबेस में निर्यात करने के लिए किया जा सकता है। साथ ही, सुनिश्चित करें कि कमांड निष्पादित करने से पहले आपके पास दोनों सर्वरों तक पहुंच है।

# Export database to another database - Same server
mysqldump -u enterprise -p enterprise | mysql enterprise_backup

# Export database to another database - Different server
mysqldump -u enterprise -p enterprise | mysql -h host.example.com -p 3306 enterprise

इस प्रकार हम डेटाबेस को निर्यात या बैकअप कर सकते हैं।


  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. SQL DELETE सिंटैक्स - DBMS द्वारा सूचीबद्ध

  3. PHP स्ट्रिप_टैग के समतुल्य MySQL क्वेरी क्या है?

  4. कॉलम से अद्वितीय मानों का चयन करना

  5. डेटाबेस कॉर्नर:मैसकल स्टोरेज इंजन के लिए शुरुआती गाइड