2010-07-07 20 views
5

मैं binlog के माध्यम से MySQL प्रतिकृति स्थापित कर रहा हूँ। यह एक मास्टर/गुलाम सेटअप है।MySQL प्रतिकृति सर्वोत्तम प्रथाओं

मेरे पास कुछ बेहतरीन प्रश्न हैं कि यह कैसे करें सबसे अच्छा तरीका है।

  1. क्या जानकारी_शेमा को दोहराया जाना चाहिए, यदि हां/नहीं, क्यों?
  2. क्या mysql डीबी दोहराया जाना चाहिए, यदि हां/नहीं, क्यों?
  3. यदि यह सब दोहराया जाना चाहिए, तो कोई binlog-do-db सेट करने की आवश्यकता नहीं है?

चीयर्स।

उत्तर

13
  1. नहीं, सूचना स्कीमा को दोहराना नहीं चाहिए। यह आपकी टेबल, डीबीएस, दिनचर्या, ट्रिगर्स इत्यादि के बारे में मेटा डेटा है। सर्वर को अपनी स्वयं की जानकारी_शेमा को पॉप्युलेट करने दें।
  2. mysql डीबी दोहराने के लिए ठीक है, खासकर उस उदाहरण में जहां आप कई उपयोगकर्ताओं की स्थापना करेंगे। यदि आपका मास्टर विफल रहता है, तो आपको उस पर असफल होने के लिए अपने दास सर्वर पर उपलब्ध एक ही उपयोगकर्ता जानकारी की आवश्यकता होगी। यदि ऐसा होना चाहिए, तो आपको वही विशेषाधिकार उपलब्ध होना चाहिए।
  3. केवल उस डेटाबेस को सूचीबद्ध करें जिसे आप binlog-do-db के साथ दोहराना चाहते हैं। यदि आप किसी की सूची नहीं देते हैं, तो सबकुछ डिफ़ॉल्ट रूप से दोहराया जाएगा।
+0

तो इसका मतलब है कि 'binlog-do-db' को परिभाषित किया जाना चाहिए? मेरे पास दोहराने के लिए बहुत सारे डेटाबेस हैं और मैं उन्हें सूचीबद्ध नहीं करना चाहता हूं – conandor

+6

INFORMATION_SCHEMA में परिवर्तन बाइनरी लॉग में नहीं लिखे गए हैं। यह एक "असली" डेटाबेस नहीं है, यह आंतरिक मेटाडेटा के आस-पास एक सुविधाजनक टैब्यूलर रैपर है, इसलिए इसमें कोई वास्तविक INSERT/UPDATE/DELETE संचालन नहीं होता है। INFORMATION_SCHEMA के लिए एक binlog-ignore-db या relay-ignore-db को शामिल करने का बिल्कुल कोई कारण नहीं है और प्रतिकृति फ़िल्टर, विशेष रूप से अनावश्यक वाले कई कारण * नहीं * हैं। –

+0

यदि आप वास्तव में binlog-do-db का उपयोग करते हैं, तो याद रखें कि क्रॉस-डेटाबेस क्वेरी काम नहीं करेंगे। यदि मैं उन सर्वरों पर नहीं है जो केवल एक उत्पादन डेटाबेस साझा करते हैं, तो मैं binlog-do-db का उपयोग नहीं करना पसंद करता हूं। स्पष्टीकरण के लिए दस्तावेज़ देखें: http://dev.mysql.com/doc/refman/5.5/en/replication-options-binary-log.html#option_mysqld_binlog-do-db – warden

0
  1. सं जानकारी स्कीमा विस्तार https://dev.mysql.com/doc/refman/5.0/en/information-schema.html
  2. हाँ आप कर सकते हैं तो क्रम में उन का बैकअप आप इसे दोहराने सकता है क्योंकि mysql डेटाबेस सभी उपयोगकर्ता प्रमाणिकता शामिल यह पढ़ को दोहराने की जरूरत है।
  3. हाँ चयनित डेटाबेस को दोहराने के लिए binlog-do-db का उपयोग करें अन्यथा यदि कुछ भी उल्लेख नहीं किया गया है तो सब कुछ दोहराया जाएगा।
संबंधित मुद्दे