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

MySQL में स्रोत-प्रतिकृति प्रतिकृति को कैसे कॉन्फ़िगर करें

MySQL एक रिलेशनल डेटाबेस मैनेजमेंट सिस्टम है जो सबसे लोकप्रिय ओपन-सोर्स प्रोजेक्ट्स में से एक है। यद्यपि इसकी स्थिरता के लिए जाना जाता है, यदि स्रोत-प्रतिकृति प्रतिकृति कॉन्फ़िगर किया गया है, तो MySQL और भी अधिक विश्वसनीय है। प्रतिकृति में, एक MySQL सर्वर को आमतौर पर स्रोत . नामित किया जाता है . एक स्रोत किसी भी डेटाबेस परिवर्तन और डेटा अपडेट को एक या अधिक प्रतिकृति . को भेजता है डेटाबेस सर्वर। MySQL की डेटा प्रतिकृति प्रक्रिया लचीली है, और प्रतिकृति सर्वर को स्रोत से स्थायी रूप से कनेक्ट होने की आवश्यकता नहीं है। यह मार्गदर्शिका बताती है कि MySQL में स्रोत-प्रतिकृति डेटा प्रतिकृति को कैसे कॉन्फ़िगर किया जाए।

MySQL डेटा प्रतिकृति कैसे काम करती है

प्रतिकृति प्रक्रिया पहले स्रोत डेटाबेस में डेटा संग्रहीत करती है और फिर इसे किसी भी प्रतिकृति पर कॉपी करती है। निर्देश को संसाधित करने के बाद, स्रोत डेटाबेस सर्वर बाइनरी लॉग में परिवर्तन को ट्रैक करता है। लॉग डेटाबेस संरचना और सामग्री में सभी परिवर्तनों के अनुक्रमिक रिकॉर्ड के रूप में कार्य करता है। SELECT बयान दर्ज नहीं किए जाते हैं क्योंकि वे डेटाबेस सामग्री को नहीं बदलते हैं।

अद्यतन अतुल्यकालिक रूप से होते हैं, इसलिए प्रतिकृतियों को लगातार कनेक्ट होने की आवश्यकता नहीं होती है। यह उच्च-विश्वसनीयता प्रणालियों के सिंक्रोनस आर्किटेक्चर के विपरीत है। यदि रीयल-टाइम सिंक्रनाइज़ेशन की आवश्यकता है, तो MySQL NDB क्लस्टर . का उपयोग करने की अनुशंसा करता है ।

प्रत्येक प्रतिकृति स्रोत के बाइनरी लॉग की सामग्री का अनुरोध करके स्रोत से डेटा खींचती है। प्रतिकृति तब कथनों को क्रम में लागू करती है, स्रोत पर हुई घटनाओं को प्रभावी ढंग से दोहराती है। प्रत्येक प्रतिकृति स्वतंत्र है और स्रोत बाइनरी लॉग के साथ अपनी वर्तमान स्थिति का ट्रैक रखती है। इसके अतिरिक्त, प्रत्येक प्रतिकृति अपने स्वयं के शेड्यूल के अनुसार स्रोत के साथ सिंक्रनाइज़ कर सकती है। डेटा को प्रतिकृतियों सहित किसी भी सर्वर से पढ़ा जा सकता है।

MySQL उच्च स्तर की ग्रैन्युलैरिटी की अनुमति देता है। डेटाबेस के भीतर कुछ डेटाबेस या यहां तक ​​कि विशिष्ट तालिकाओं पर दोहराना संभव है। डिफ़ॉल्ट प्रतिकृति प्रारूप है विवरण आधारित प्रतिकृति (SBR), जिसमें संपूर्ण SQL कथन दोहराया जाता है। हालांकि, पंक्ति आधारित प्रतिकृति (आरबीआर) भी उपलब्ध है। यह प्रारूप उन पंक्तियों को दोहराता है जिन्हें बदल दिया गया है। अधिक जटिल कई-से-अनेक कॉन्फ़िगरेशन को कॉन्फ़िगर करना भी संभव है। विभिन्न प्रतिकृति विकल्पों के बारे में अधिक जानकारी के लिए MySQL दस्तावेज़ीकरण से परामर्श करें।

नोट MySQL ने पहले स्रोत-प्रतिकृति प्रतिकृति को "मास्टर-स्लेव प्रतिकृति" के रूप में संदर्भित किया था। MySQL संगठन ने हाल ही में शब्दावली अपडेट में उनके तर्क की व्याख्या करते हुए शब्दावली को बदल दिया है। पुराने शब्द "मास्टर" को "स्रोत" में बदल दिया गया है, जबकि "दास" को अब "प्रतिकृति" के रूप में जाना जाता है। पुराने शब्द अभी भी कुछ कमांड और आउटपुट डिस्प्ले में दिखाई दे सकते हैं जबकि MySQL अपने कोडबेस को अपडेट करता है। यह मार्गदर्शिका पूरे निर्देशों में MySQL के पसंदीदा शब्दों का उपयोग करती है।

MySQL डेटा प्रतिकृति के लाभ

स्रोत-प्रतिकृति प्रतिकृति को सक्षम करना एक गैर-अनावश्यक प्रणाली पर कई महत्वपूर्ण लाभ प्रदान करता है। नीचे दी गई सूची कुछ लाभों का अवलोकन प्रदान करती है:

  • किसी भी समय लाइव बैकअप कॉपी बनाना आसान है। क्योंकि प्रतिकृति प्रक्रिया अतुल्यकालिक है, प्रतिकृति किसी भी शेड्यूल के अनुसार हो सकती है। विश्वसनीय रूप से कार्य करने के लिए प्रतिरूपों को स्रोत के साथ समन्वयित रखने की आवश्यकता नहीं है।

  • प्रतिकृति जोड़ने से पूरे सिस्टम के लिए अपटाइम और विश्वसनीयता बढ़ सकती है। यदि रखरखाव की आवश्यकता है या स्रोत डेटाबेस अनुपलब्ध है, तो प्राथमिक नियंत्रण प्रतिकृति पर स्विच कर सकता है।

  • प्रत्येक प्रतिकृति डेटाबेस का एक और पठनीय उदाहरण प्रदान करती है। यह डेटा माइनिंग या विश्लेषण प्रोग्राम को मूल स्रोत डेटाबेस पर अतिरिक्त भार डाले बिना प्रतिकृति को क्वेरी करने की अनुमति देता है।

  • यह आर्किटेक्चर स्केलेबिलिटी और परफॉर्मेंस को बढ़ाता है। डेटाबेस पढ़ता है और SELECT बयानों को सर्वरों के बीच संतुलित किया जा सकता है, विलंबता को कम किया जा सकता है।

  • तृतीय पक्ष प्रतिकृति के माध्यम से डेटाबेस तक केवल पढ़ने के लिए पहुंच प्राप्त कर सकते हैं, और अब स्रोत तक पहुंच की आवश्यकता नहीं है। आवश्यकता होने पर एक प्रतिकृति डेटाबेस ऑन-डिमांड बनाया जा सकता है और जब इसकी आवश्यकता नहीं होती है तो इसे नष्ट कर दिया जाता है। यह तकनीक सुरक्षा को बढ़ाती है और सुनिश्चित करती है कि मूल डेटा के साथ छेड़छाड़ करना असंभव है।

शुरू करने से पहले

  1. यदि आपने पहले से ऐसा नहीं किया है, तो एक लिनोड खाता बनाएं और उदाहरण की गणना करें। लिनोड के साथ शुरुआत करना और कंप्यूट इंस्टेंस गाइड बनाना देखें।

  2. अपने सिस्टम को अपडेट करने के लिए कंप्यूट इंस्टेंस गाइड की स्थापना और सुरक्षा का पालन करें। आप समय क्षेत्र सेट करना, अपना होस्टनाम कॉन्फ़िगर करना, एक सीमित उपयोगकर्ता खाता बनाना और SSH पहुंच को सख्त करना भी चाह सकते हैं।

  3. MySQL स्रोत-प्रतिकृति प्रतिकृति को कॉन्फ़िगर करने के लिए आपके पास कम से कम दो अलग-अलग लाइनोड्स होने चाहिए। एक लाइनोड स्रोत डेटाबेस को होस्ट करता है, जबकि दूसरा नोड रेप्लिका सर्वर के लिए आवश्यक है।

नोट इस गाइड के चरण गैर-रूट उपयोगकर्ता के लिए लिखे गए हैं। जिन आदेशों के लिए उन्नत विशेषाधिकारों की आवश्यकता होती है, उनके आगे sudo . लगा होता है . यदि आप sudo . से परिचित नहीं हैं कमांड, लिनक्स उपयोगकर्ता और समूह गाइड देखें।

MySQL में स्रोत-प्रतिकृति प्रतिकृति कॉन्फ़िगर करें

स्रोत-प्रतिकृति प्रतिकृति को कॉन्फ़िगर करने के लिए, MySQL को दो अलग-अलग सर्वरों पर स्थापित किया जाना चाहिए जो एक दूसरे के साथ संचार कर सकते हैं। ये निर्देश उबंटू वितरण के लिए तैयार हैं लेकिन आम तौर पर सभी लिनक्स वितरण के लिए लागू होते हैं। प्रक्रिया में निम्नलिखित चरण होते हैं:

  1. MySQL स्थापित करें।
  2. MySQL स्रोत डेटाबेस को कॉन्फ़िगर करें।
  3. प्रतिकृति के लिए एक नया MySQL उपयोगकर्ता कॉन्फ़िगर करें।
  4. प्रतिकृति के लिए MySQL डेटा तैयार करें।
  5. MySQL प्रतिकृति डेटाबेस कॉन्फ़िगर करें।
  6. प्रतिकृति MySQL डेटा आयात करें और प्रतिकृति सक्रिय करें।

MySQL इंस्टॉल करें

यदि MySQL पहले से दोनों लाइनोड्स पर उपलब्ध नहीं है, तो निम्न चरणों का उपयोग करके इसे स्थापित करें:

  1. लाइनोड्स को अपग्रेड करें।

     sudo apt-get update && sudo apt-get upgrade
    
  2. स्रोत और प्रतिकृति सर्वर दोनों पर MySQL सर्वर और क्लाइंट एप्लिकेशन इंस्टॉल करें।

     sudo apt-get install mysql-server mysql-client -y
    
  3. mysql_secure_installation का उपयोग करके रूट पासवर्ड सहित सुरक्षा विकल्पों को कॉन्फ़िगर करें आदेश।

     sudo mysql_secure_installation
    
  4. यदि आप फ़ायरवॉल का उपयोग कर रहे हैं जैसे कि ufw , सुनिश्चित करें कि यह MySQL ट्रैफ़िक को अनुमति देता है। पोर्ट खोलने के लिए निम्न नियम जोड़ें 3306 फ़ायरवॉल पर।

     ufw allow mysql
    

MySQL स्रोत डेटाबेस को कॉन्फ़िगर करें

MySQL प्रतिकृति को सक्षम करने के लिए, मुख्य MySQL कॉन्फ़िगरेशन फ़ाइल में कुछ चर संपादित करें। स्रोत डेटाबेस कॉन्फ़िगरेशन में निम्नलिखित परिवर्तन करें।

  1. स्रोत डेटाबेस सर्वर पर मुख्य MySQL कॉन्फ़िगरेशन फ़ाइल का पता लगाएँ। यह फ़ाइल आमतौर पर /etc/mysql/mysql.conf.d/mysqld.cnf पर पाई जाती है। . हालांकि पहले के इंस्टॉलेशन में, यह /etc/my.cnf . पर स्थित हो सकता है या /etc/mysql/my.cnf . इसे किसी एक फ़ाइल से includedir . के माध्यम से भी संदर्भित किया जा सकता है निर्देश।

  2. MySQL कॉन्फ़िगरेशन फ़ाइल खोलें और bind-addressबदलें स्रोत सर्वर के आईपी पते पर।

    फाइल:/ आदि/mysql/mysql.conf.d/mysqld.cnf
    1
    2
    
    bind-address  = <source_ip_address>
        
  3. server-id . के लिए टिप्पणी हटाएं या पंक्तियां जोड़ें और log-bin . server-id सेट करें करने के लिए 1 , और log-bin करने के लिए /var/log/mysql/mysql-bin.log

    नोट सुनिश्चित करें कि skip_networking चर कहीं भी घोषित नहीं किया गया है। अगर यह इस फाइल के अंदर दिखाई देता है तो इसे कमेंट करें। एकल डेटाबेस को दोहराने के लिए, लाइन जोड़ें binlog_do_db = <database_name> फ़ाइल में।
    फाइल:/ आदि/mysql/mysql.conf.d/mysqld.cnf
    1
    2
    3
    
    server-id  = 1
    log_bin  = /var/log/mysql/mysql-bin.log
        
  4. MySQL सेवा को पुनरारंभ करें।

     sudo systemctl restart mysql
    
  5. MySQL की स्थिति सत्यापित करें और सुनिश्चित करें कि यह active है ।

     sudo systemctl status mysql
    
    mysql.service - MySQL Community Server
    Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
    Active: active (running) since Sun 2021-05-30 13:06:47 UTC; 1 day 1h ago

प्रतिकृति के लिए एक नया MySQL उपयोगकर्ता कॉन्फ़िगर करें

प्रतिकृति का प्रतिनिधित्व करने के लिए आपको स्रोत सर्वर पर एक नया उपयोगकर्ता बनाना होगा। नए उपयोगकर्ता MySQL शेल के अंदर बनाए जाते हैं।

  1. MySQL शेल दर्ज करें।

     sudo mysql -u root -p
    
  2. MySQL CREATE USER . का उपयोग करके प्रतिकृति खाते के लिए एक उपयोगकर्ता जोड़ें वाक्य - विन्यास। उपयोगकर्ता नाम में प्रतिकृति खाते का नाम होना चाहिए, एक @ प्रतीक, और प्रतिकृति सर्वर का आईपी पता। REPLICA_PASSWORD . के स्थान पर खाते के लिए अधिक सुरक्षित पासवर्ड चुनें ।

     CREATE USER 'replica_account_name'@'replica_ip_address‘ IDENTIFIED WITH sha256_password BY 'REPLICA_PASSWORD';
    
    नोट प्रतिकृति को किसी भी पते से कनेक्ट करने में सक्षम होने के लिए, उपयोगकर्ता को 'replica_account_name'@'%' के रूप में निर्दिष्ट करें . % प्रतीक किसी भी पते या डोमेन का प्रतिनिधित्व करता है। यह कुछ सुरक्षा की कीमत पर अतिरिक्त लचीलापन प्रदान करता है।
  3. दूरस्थ प्रतिकृति उपयोगकर्ता को प्रतिकृति अधिकार प्रदान करें।

     GRANT REPLICATION SLAVE ON *.* TO 'replica_account_name'@'replica_ip_address';
    

प्रतिकृति के लिए MySQL डेटा तैयार करें

इस बिंदु पर, डेटा को प्रतिकृति के लिए चरणबद्ध करने के लिए स्रोत डेटाबेस को फ्लश और लॉक करना आवश्यक है।

  1. MySQL शेल के अंदर रहें और डेटाबेस को पुनरारंभ किए बिना अनुदान तालिका को पुनः लोड करने के लिए विशेषाधिकारों को फ्लश करें।

     FLUSH PRIVILEGES;
    
  2. डेटाबेस को स्थिर बिंदु पर स्थिर करने के लिए डेटाबेस को लॉक करें जिससे डेटा निर्यात किया जा सके। जब तक आप डेटाबेस निर्यात नहीं करते तब तक MySQL क्लाइंट को चालू रखें। कोई भी राइट कमांड डालने या MySQL शेल से बाहर निकलने से लॉक रिलीज हो जाता है।

     FLUSH TABLES WITH READ LOCK;
    
    सावधानी यह कमांड सोर्स डेटाबेस के सभी कमिट्स को ब्लॉक कर देता है। स्रोत को और कमिट संसाधित करने की अनुमति देने से पहले डेटा निर्यात करें। अन्यथा, प्रतिकृति डेटाबेस स्रोत डेटाबेस के साथ दूषित या असंगत हो सकता है। इस खंड में शेष दो चरणों को जल्द से जल्द पूरा करें।
  3. निम्न आदेश का उपयोग करके डेटाबेस की स्थिति सत्यापित करें। यह कमांड वर्तमान लॉग फ़ाइल को इस फ़ाइल में अंतिम रिकॉर्ड की स्थिति के साथ प्रदर्शित करता है। इस जानकारी को रिकॉर्ड करें क्योंकि बाद में प्रतिकृति पर प्रतिकृति शुरू करना आवश्यक है।

     SHOW MASTER STATUS;
    
    +------------------+----------+--------------+------------------+-------------------+
    | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
    +------------------+----------+--------------+------------------+-------------------+
    | mysql-bin.000002 |     1301 |              |                  |                   |
    +------------------+----------+--------------+------------------+-------------------+
    1 row in set (0.00 sec)
  4. किसी भिन्न कंसोल से Linux शेल का उपयोग करते हुए, mysqldump . का उपयोग करके डेटाबेस को निर्यात करें औजार। गंतव्य फ़ाइल के लिए एक यादगार नाम चुनें। –master-data शामिल करें लॉग फ़ाइल और लॉग में वर्तमान रिकॉर्ड की स्थिति के बारे में जानकारी जोड़ने का विकल्प।

     sudo mysqldump -u root -p -–all-databases -–master-data > databasecopy.sql
    
    नोट किसी एकल डेटाबेस को निर्यात करने के लिए, --opt <database_name> . शामिल करें विकल्प के बजाय -–all-databases .
  5. मूल MySQL शेल में वापस, स्रोत डेटाबेस को अनलॉक करें।

     UNLOCK TABLES;
    
  6. MySQL शेल से बाहर निकलें।

     QUIT;
    
  7. निर्यात की गई डेटाबेस फ़ाइल को ftp . का उपयोग करके, प्रतिकृति डेटाबेस सर्वर पर कॉपी करें , scp , या फ़ाइल को स्थानांतरित करने का कोई अन्य तरीका।

     scp databasecopy.sql [email protected]<replica_ip_address>
    

MySQL रेप्लिका डेटाबेस को कॉन्फ़िगर करें

निम्नलिखित कॉन्फ़िगरेशन को प्रतिकृति डेटाबेस कॉन्फ़िगरेशन पर लागू किया जाना चाहिए। प्रतिकृति सर्वर पर MySQL स्थापित करने के लिए, MySQL अनुभाग स्थापित करें देखें।

  1. मुख्य MySQL फ़ाइल खोलें, जो आमतौर पर /etc/mysql/mysql.conf.d/mysqld.cnf पर स्थित होती है। , और bind-address बदलें प्रतिकृति सर्वर के आईपी पते से मेल खाने के लिए।

    फाइल:/ आदि/mysql/mysql.conf.d/mysqld.cnf
    1
    2
    
    bind-address  = xx.xx.xx.xx
        
  2. server-id . के लिए टिप्पणी हटाएं या पंक्तियां जोड़ें और log-bin . server-id 2 . पर सेट होना चाहिए प्रतिकृति पर, जबकि log-bin चर को /var/log/mysql/mysql-bin.log पर सेट किया जाना चाहिए . relay-log . के लिए एक चर जोड़ें और इसे /var/log/mysql/mysql-relay-bin.log पर सेट करें ।

    नोट सुनिश्चित करें कि skip_networking वेरिएबल इस फाइल के अंदर कहीं भी सेट नहीं है। किसी एकल डेटाबेस को दोहराने के लिए, फ़ाइल में निम्न निर्देश जोड़ें binlog_do_db = database_name . एक से अधिक प्रतिकृति को कॉन्फ़िगर करने के लिए, server-id को नंबर दें मूल्यों में क्रमिक रूप से वृद्धि हो रही है। उदाहरण के लिए, दूसरी प्रतिकृति में एक server-id होगा का 3 .
    फाइल:/ आदि/mysql/mysql.conf.d/mysqld.cnf
    1
    2
    3
    4
    
    server-id        = 2
    log_bin    = /var/log/mysql/mysql-bin.log
    relay-log        = /var/log/mysql/mysql-relay-bin.log
        
  3. परिवर्तनों को शामिल करने के लिए MySQL सेवा को पुनरारंभ करें।

     sudo systemctl restart mysql
    
  4. MySQL की स्थिति सत्यापित करें और सुनिश्चित करें कि यह active है ।

     sudo systemctl status mysql
    
    mysql.service - MySQL Community Server
         Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset:>
         Active: active (running) since Mon 2021-05-31 16:29:48 UTC; 6s ago
  5. (वैकल्पिक ) MySQL अधिक सुरक्षा के लिए स्रोत से कनेक्ट करने के लिए SSL का उपयोग करने की अनुशंसा करता है। एसएसएल को कॉन्फ़िगर करने के बारे में अधिक जानकारी MySQL एसएसएल दस्तावेज़ीकरण में मिल सकती है। आरएसए सेट-अप टूल इस प्रक्रिया को तेज करने के लिए इस्तेमाल किया जा सकता है।

प्रतिकृति MySQL डेटा आयात करें और प्रतिकृति सक्रिय करें

अगला कदम डेटाबेस डेटा की प्रतिलिपि आयात करना, प्रतिकृति स्रोत सेट करना और प्रतिकृति डेटाबेस सर्वर को पुनरारंभ करना है। तब प्रतिकृति सिंक में होनी चाहिए और उपयोग के लिए तैयार होनी चाहिए।

  1. स्रोत डेटाबेस को आयात करने के लिए लिनक्स शेल से निम्न कमांड दर्ज करें। पहले डेटा निर्यात करने के लिए प्रयुक्त डेटाबेस नाम निर्दिष्ट करें।

     sudo mysql -u root -p < databasecopy.sql
    
  2. MySQL शेल में लॉग इन करें।

     sudo mysql -u root -p
    
  3. प्रतिकृति बंद करो।

     STOP REPLICA;
    
  4. CHANGE REPLICATION SOURCE दर्ज करें आदेश, निम्नलिखित विवरण के साथ। स्रोत डेटाबेस सर्वर के आईपी पते को source_ip_address . के स्थान पर बदलें . SOURCE_USER के लिए और SOURCE_PASSWORD , प्रतिकृति अनुभाग के लिए एक नया MySQL उपयोगकर्ता कॉन्फ़िगर करें में से प्रतिकृति का उपयोगकर्ता नाम और पासवर्ड विवरण दर्ज करें। SOURCE_LOG_FILE के लिए और SOURCE_LOG_POS मान, आपके द्वारा दर्ज की गई जानकारी दर्ज करें SHOW MASTER STATUS; आदेश।

     CHANGE REPLICATION SOURCE TO SOURCE_HOST='source_ip_address',SOURCE_USER='replica_account_name', SOURCE_PASSWORD='REPLICA_PASSWORD', SOURCE_LOG_FILE='log_file_name', SOURCE_LOG_POS=log_position;
    
    नोट कनेक्शन के लिए एसएसएल का उपयोग करने के लिए, जो MySQL अनुशंसा करता है, विशेषता जोड़ें SOURCE_SSL=1 आदेश को। स्रोत-प्रतिकृति प्रतिकृति संदर्भ में SSL का उपयोग करने के बारे में अधिक जानकारी theMySQL दस्तावेज़ में पाई जा सकती है।
  5. प्रतिकृति को पुनरारंभ करें।

     START REPLICA;
    
  6. प्रतिकृति की स्थिति सत्यापित करें। प्रतिकृति को घटनाओं की प्रतीक्षा करनी चाहिए, और कोई Last_IO_Error नहीं होना चाहिए या Last_Error आयोजन। Slave_SQL_Running_State प्रविष्टि को यह बताना चाहिए कि प्रतिकृति ने रिले लॉग को पढ़ लिया है।

     SHOW REPLICA STATUS\G
    
    Slave_IO_State: Waiting for master to send event
                      Master_Host: 178.79.153.39
                      Master_User: replica
                      Master_Port: 3306
                    Connect_Retry: 60
                  Master_Log_File: mysql-bin.000006
              Read_Master_Log_Pos: 156
                   Relay_Log_File: mysql-relay-bin.000006
                    Relay_Log_Pos: 371
            Relay_Master_Log_File: mysql-bin.000006
                 Slave_IO_Running: Yes
                Slave_SQL_Running: Yes
    ..
                       Last_Errno: 0
                       Last_Error:
    ..
            Seconds_Behind_Master: 0
    Master_SSL_Verify_Server_Cert: No
                    Last_IO_Errno: 0
                    Last_IO_Error:
                   Last_SQL_Errno: 0
                   Last_SQL_Error:
      Replicate_Ignore_Server_Ids:
                 Master_Server_Id: 1
                      Master_UUID: 5bed9d10-c140-11eb-bc63-f23c92a2a6ac
                 Master_Info_File: mysql.slave_master_info
                        SQL_Delay: 0
              SQL_Remaining_Delay: NULL
          Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates

टेस्ट MySQL सोर्स-रेप्लिका प्रतिकृति

यदि स्रोत डेटाबेस पहले से ही प्रतिकृति के त्वरित होने से पहले ही भर गया था, तो अतिरिक्त परीक्षण की आवश्यकता है। इस मामले में, सत्यापित करें कि डेटा आयात होने के बाद स्रोत पर मौजूद डेटाबेस और टेबल प्रतिकृति पर मौजूद हैं। SHOW REPLICA STATUS में प्रदर्शन, Slave_SQL_Running_State प्रविष्टि को पढ़ना चाहिए Slave has read all relay log

यह सत्यापित करने के लिए कि प्रतिकृति ठीक से हो रही है, स्रोत पर एक नया डेटाबेस या तालिका बनाएँ। कुछ सेकंड के बाद, प्रतिकृति पर नई प्रविष्टि मौजूद होनी चाहिए। SHOW DATABASES; . का उपयोग करके डेटाबेस की उपस्थिति की पुष्टि करें आज्ञा। किसी तालिका की उपस्थिति की पुष्टि करने के लिए, USE databasename; . का उपयोग करके डेटाबेस पर स्विच करें , और SHOW TABLES; . दर्ज करें . SHOW REPLICA STATUS को चलाना भी एक अच्छा विचार है किसी भी त्रुटि के लिए आउटपुट को कमांड और जांच करें। Last_Error और Last_IO_Error फ़ील्ड खाली होनी चाहिए और प्रतिकृति जुड़ी रहनी चाहिए।

MySQL सोर्स-रेप्लिका प्रतिकृति के बारे में अधिक जानें

स्रोत-प्रतिकृति प्रतिकृति के बारे में जानकारी के लिए सबसे अच्छा स्रोत आधिकारिक MySQL प्रलेखन है। प्रतिकृति पर अनुभाग में आर्किटेक्चर और स्थापना प्रक्रिया के बारे में अधिक विस्तृत जानकारी है। TheMySQL फ़ोरम भी सहायक हो सकते हैं।

अधिक जानकारी

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

  • MySQL दस्तावेज़ीकरण

  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. MySQL लेफ्ट जॉइन के साथ पंक्तियों को हटाना

  4. उत्पाद समीक्षा - MySQL के लिए तारकीय मरम्मत

  5. एक MySQL डेटाबेस को SQLite डेटाबेस में निर्यात करें