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

सभी MySQL डेटाबेस को पुराने से नए सर्वर में कैसे ट्रांसफर करें

एक MySQL/MariaDB . को स्थानांतरित या माइग्रेट करना सर्वर के बीच डेटाबेस आमतौर पर केवल कुछ आसान कदम उठाता है, लेकिन डेटा स्थानांतरण में कुछ समय लग सकता है जो उस डेटा की मात्रा पर निर्भर करता है जिसे आप स्थानांतरित करना चाहते हैं।

इस लेख में, आप सीखेंगे कि अपने सभी MySQL/MariaDB . को कैसे स्थानांतरित या स्थानांतरित करें पुराने लिनक्स सर्वर से नए सर्वर में डेटाबेस, इसे सफलतापूर्वक आयात करें और पुष्टि करें कि डेटा वहां है।

महत्वपूर्ण नोट्स

  • सुनिश्चित करें कि MySQL का एक ही संस्करण दोनों सर्वरों पर समान वितरण के साथ स्थापित है।
  • सुनिश्चित करें कि डेटाबेस डंप फ़ाइल और आयातित डेटाबेस को रखने के लिए दोनों सर्वर पर पर्याप्त खाली स्थान है।
  • कभी भी data को स्थानांतरित करने पर विचार न करें डेटाबेस की निर्देशिका दूसरे सर्वर पर। डेटाबेस की आंतरिक संरचना के साथ कभी भी खिलवाड़ न करें, यदि आप ऐसा करते हैं, तो आपको भविष्य में समस्याओं का सामना करना पड़ेगा।

एक MySQL डेटाबेस को डंप फ़ाइल में निर्यात करें

सबसे पहले अपने पुराने सर्वर में लॉगिन करके प्रारंभ करें और systemctl का उपयोग करके mysql/mariadb सेवा को बंद करें दिखाए गए अनुसार आदेश।

# systemctl stop mariadb
OR
# systemctl stop mysql

फिर अपने सभी MySQL . को डंप करें mysqldump कमांड का उपयोग करके एक फ़ाइल में डेटाबेस।

# mysqldump -u [user] -p --all-databases > all_databases.sql

एक बार डंप पूरा हो जाने के बाद, आप डेटाबेस को स्थानांतरित करने के लिए तैयार हैं।

यदि आप किसी एकल डेटाबेस को डंप करना चाहते हैं, तो आप इसका उपयोग कर सकते हैं:

# mysqldump -u root -p --opt [database name] > database_name.sql

MySQL डेटाबेस डंप फ़ाइल को नए सर्वर पर स्थानांतरित करें

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

# scp all_databases.sql [email protected]:~/       [All Databases]
# scp database_name.sql [email protected]:~/       [Singe Database]

एक बार जब आप कनेक्ट हो जाते हैं, तो डेटाबेस को नए सर्वर पर स्थानांतरित कर दिया जाएगा।

MySQL डेटाबेस आयात करें डंप फ़ाइल को नए सर्वर पर

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

# mysql -u [user] -p --all-databases < all_databases.sql   [All Databases]
# mysql -u [user] -p newdatabase < database_name.sql      [Singe Database]

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

# mysql -u user -p
# show databases;

MySQL डेटाबेस और उपयोगकर्ताओं को नए सर्वर पर स्थानांतरित करें

यदि आप अपने सभी MySQL डेटाबेस, उपयोगकर्ता, अनुमतियाँ और डेटा संरचना पुराने सर्वर को नए में ले जाना चाहते हैं, तो आप mysql/mariadb डेटा निर्देशिका से सभी सामग्री को दिखाए गए अनुसार नए सर्वर पर कॉपी करने के लिए rsync कमांड का उपयोग कर सकते हैं।

# rsync -avz /var/lib/mysql/* [email protected]:/var/lib/mysql/ 

एक बार स्थानांतरण पूर्ण हो जाने पर, आप mysql/mariadb डेटा निर्देशिका के स्वामित्व को उपयोगकर्ता और समूह mysql पर सेट कर सकते हैं, फिर यह जांचने के लिए एक निर्देशिका सूची बना सकते हैं कि सभी फ़ाइलें स्थानांतरित कर दी गई हैं।

# chown mysql:mysql -R /var/lib/mysql/
# ls  -l /var/lib/mysql/

बस इतना ही! इस लेख में, आपने सीखा कि कैसे सभी MySQL/MariaDB डेटाबेस को एक सर्वर से दूसरे सर्वर पर आसानी से माइग्रेट किया जाए। अन्य विधियों की तुलना में आप इस विधि को कैसे पाते हैं? हम आप तक पहुंचने के लिए नीचे दिए गए टिप्पणी फ़ॉर्म के माध्यम से आपसे सुनना चाहेंगे।


  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 स्लो क्वेरी को कैसे इनेबल करें MySQL में लॉग इन करें

  2. MySQL में नॉट अशक्त बाधा कैसे निकालें

  3. Linux पर Mysql56 स्थापित करने के चरण

  4. MySQL में एक नंबर को "अनहेक्स" कैसे करें

  5. GUI का उपयोग करके MySQL कार्यक्षेत्र में वर्तमान कनेक्शन कैसे देखें?