النسخ المتماثل في نفس الخادم ضمن قواعد بيانات مختلفة.ماي أس كيو إل 5.6

dba.stackexchange https://dba.stackexchange.com/questions/103020

سؤال

ماذا املك :

  • جهاز يعمل بنظام Windows مزود بمثيل واحد من MySQL 5.6 Server.
  • اثنين من قواعد البيانات اسمه اختبار وtest2.
  • Test قاعدة البيانات لديها جدول يسمى activity مع الأعمدة id و class

ما احتاجه :

  • تكرار test.activity الجدول ل test2 قاعدة البيانات بشرط ذلك Test.activity.class = 'B'.

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

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

المحلول

وهذا لن يكون الوضع الطبيعي على الإطلاق!لا يمكنك تغيير قاعدة البيانات أثناء النسخ المتماثل، ولا يمكن أن يكون لدى السيد/العبد نفس معرفات الخادم.أنصحك، إذا كان يجب عليك القيام بذلك، بإعداد بعض المشغلات على قاعدة البيانات الأولى، لتكرار أوامر الإدراج/التحديث مقابل الأوامر الثانية.

نصائح أخرى

لأنه موجود على نفس الخادم، لماذا لا تستخدم مشغلًا لهذا؟

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

يمكنك أن تبحث هنا للحصول على أمثلة مشغلات MySQL.و هنا هو عينة لحالتك.

إذا فهمت احتياجاتك بشكل صحيح، فيمكنك الحصول على مثيلين من MySQL على خادم واحد (نظام تشغيل) واحد، ثم يمكنك تكوين أحدهما كخادم رئيسي والآخر كخادم تابع.يجب عليك إنشاء my.conf مختلف، وقد أطلقنا عليه اسم my1.conf وmy2.conf بحيث يجب أن يكون كل منهما مختلفًا من حيث رقم المنفذ ومسار المقبس ومسار خطأ السجل وبعض المعلمات الأخرى.باستخدام هذا الأسلوب، ستقوم بتشغيل برنامجين MySQL خفيين بتكوينات مختلفة.للحصول على وثيقة كاملة يرجى الذهاب إلى https://dev.mysql.com/doc/refman/5.1/en/multiple-servers.html .

جرب mysql sandbox، فمن المحتمل أن يحل مشكلتك (http://mysqlsandbox.net/)

لأن:

النسخ المتماثل للاختبار. جدول النشاط لاختبار قاعدة البيانات مع حالة test.activity.class = 'b'.

النسخ المتماثل الأصلي لا يساعد، وفي هذه الحالة من الأفضل ترك قاعدتي البيانات على نفس الخادم وتثبيت المشغل لـ INSER/UPDATE/DELETE في قاعدة البيانات الرئيسية، والذي سيتحقق من الشروط ويجري تغييرات مباشرة على قاعدة البيانات الثانية.

هذه هي أبسط طريقة.هناك العديد من الاحتمالات الأخرى.

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