سؤال

عندما يكون لدي اثنين من خوادم الخلية التي لها وظائف مختلفة (عقد قواعد بيانات مختلفة) ولكن تريد أن تكون قادرة على استخدام واحد منهم أن تنزلق في عندما فشل أحد, ماذا تقترح كيف يمكنني الحفاظ على البيانات في كل منهما متساوية "على مقربة من الوقت الحقيقي"?

من الواضح أنه ليس من الممكن لجعل قاعدة بيانات كاملة تفريغ كل x دقيقة.

لقد قرأت عن سجل ثنائي, هو أن الطريقة التي كنت في حاجة للذهاب ؟ أن لا تبطئ من تراجع خادم كثيرا ؟ هل هناك طريقة لا تشمل بعض الجداول في سجل ثنائي - حيث لا يهم أن البيانات قد تغير ؟

هل كانت مفيدة؟

المحلول

سجل ثنائي هو بالتأكيد الطريق للذهاب.ومع ذلك ، يجب أن تكون على علم أن مع الخلية لا يمكنك فقط الوجه ذهابا وإيابا بين الخوادم مثل ذلك.

ملقم واحد سوف يكون ماجستير والآخر سيكون الرقيق.يمكنك كتابة/قراءة الرئيسية ، ولكن يمكن فقط قراءة من العبد الخادم.إذا كنت من أي وقت مضى كتابة الرقيق, أنها سوف تكون متزامنة و ليس هناك طريقة سهلة للحصول عليها إلى مزامنة مرة أخرى (أساسا لديك لمبادلة لهم ذلك السيد العبد الجديد, ولكن هذا هو دليل شاقة عملية).

إذا كنت في حاجة حقيقية قابلة للتبديل دون إيقاف التشغيل النسخ الاحتياطي قواعد البيانات قد يكون لديك للذهاب إلى نظام غير الخلية.إذا كان كل ما تريده هو للقراءة فقط النسخ الاحتياطي الحية التي يمكنك استخدامها على الفور في أسوأ سيناريو (ماجستير دمار دائم), سجل ثنائي تناسبك على ما يرام.

نصائح أخرى

قد ترغب في النظر في ماجستير-ماجستير تكرار السيناريو, ولكن مع تطور طفيف.يمكنك تحديد أي قواعد بيانات النسخ المتماثل والحد من تكرار لكل ملقم.

على server1 وأود أن أضيف --replicate-do-db=server_2_db و على server2 --replicate-do-db=server_1_db إلى بلدي.cnf (أو بلدي.ini على ويندوز).هذا يعني أن البيانات فقط من أجل server_1_db سوف يتم إجراء النسخ المتماثل إلى server2 والعكس صحيح.

يرجى أيضا التأكد من إجراء النسخ الاحتياطي الكامل على أساس منتظم وعدم الاعتماد فقط على النسخ المتماثل كما أنها لا توفر الأمان من عرضي DROP DATABASE البيانات أو مثل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top