العودة إلى المدونة

إعداد النسخ المتماثل في MySQL على Ubuntu

إعداد النسخ المتماثل في MySQL على Ubuntu

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

في هذا الدليل، سنستعرض خطوات إعداد مثيل MySQL على خادم واحد كقاعدة بيانات مصدر، ثم تهيئة مثيل MySQL على خادم آخر ليعمل كنسخة متماثلة له.

المتطلبات الأساسية

سيوضح هذا الدليل مثالاً بسيطًا جدًا لنسخ MySQL المتماثل. وهو يتضمن قاعدة بيانات مصدر واحدة وقاعدة بيانات نسخة متماثلة واحدة. قاعدة بيانات المصدر هي النسخة الأساسية من قاعدة البيانات بينما قاعدة بيانات النسخة المتماثلة ستكون نسخة متماثلة لقاعدة بيانات المصدر. من أجل التوضيح، تم تكوين خادمين بعناوين IP التالية:

  • خادم المصدر: 31.171.240.179
  • خادم النسخة المتماثلة: 31.171.250.139

تم تكوين كل خادم بأحدث إعدادات خادم Ubuntu 20.04. أولاً، اتبع خطوات البرنامج التعليمي التي توضح كيفية إعداد خادم Ubuntu الخاص بك. لاحظ أن عدد قواعد بيانات النسخ المتماثلة يمكن أن يكون أكثر. يفترض هذا الدليل أنك قمت بالفعل بتثبيت MySQL وتكوينه. هل تحتاج إلى مساعدة في تثبيت MySQL؟ يوضح هذا الدليل بالتفصيل خطوات تثبيت MySQL والاستخدام الأساسي.

باختصار، إليك الحزم التي تحتاجها:

يجب تكوين جدران الحماية على كلا النظامين للسماح بمرور حركة المرور من كلا النظامين على المنفذ 3306. وهو المنفذ الافتراضي لـ MySQL. يمكنك معرفة المزيد حول أساسيات UFW مع عرض توضيحي من منشور المدونة الخاص بنا.

تكوين قاعدة بيانات المصدر

  • تعديل تكوين MySQL

يستخدم MySQL ملف my.cnf كملف تكوين أساسي. سنقوم بتحديث my.cnf لتعيين الخادم كـ مصدر. أولاً، افتح ملف التكوين باستخدام محرر نصوص:

ثم، أضف السطور التالية تحت قسم mysqld:

Replication in MySQL 4

ماذا تعني هذه السطور؟

  • bind-address: هذا هو الإدخال الذي يحدد الارتباط بين الخدمة وعنوان IP. بشكل افتراضي، قد تكون القيمة 127.0.0.1 (localhost). ستكون القيمة الجديدة هي عنوان IP الخاص بالخادم.
  • server-id: في نسخ MySQL المتماثل، يجب أن يكون لكل خادم معرف خادم فريد. يمكن أن يكون أي رقم. من أجل التبسيط، تم تعيينه على 1.
  • log_bin: يقوم بتخزين التفاصيل الفعلية لعملية النسخ المتماثل. ستقوم قاعدة بيانات النسخة المتماثلة بنسخ كل شيء مسجل في السجل.
  • binlog_do_db: يحدد هذا الإدخال قاعدة البيانات التي ستكون موضوع النسخ المتماثل على خادم النسخة المتماثلة. يمكن أن يكون هناك أكثر من قاعدة بيانات واحدة. هنا، قاعدة البيانات التجريبية هي newdatabase.

بعد إجراء التغييرات، احفظ ملف التكوين. يتطلب MySQL إعادة التشغيل لتحميل التغييرات على my.cnf:

  • منح الإذن لمستخدم النسخة المتماثلة

الخطوة التالية هي إنشاء مستخدم للنسخة المتماثلة ومنحه الامتيازات المناسبة. يجب القيام بذلك من واجهة تفاعل MySQL. أولاً، قم بتشغيل واجهة تفاعل MySQL:

بعد ذلك، قم بإنشاء مستخدم مخصص لقاعدة بيانات النسخة المتماثلة. قم بتغيير اسم المستخدم وكلمة المرور بشكل مناسب:

الآن، امنح الامتيازات المناسبة للمستخدم:

يمكنك معرفة المزيد حول مستخدم وصلاحيات MySQL من منشور المدونة الخاص بنا. بعد ذلك، أعد تحميل جدول الصلاحيات لتفعيل التغييرات:

FLUSH PRIVILEGES

  • تعديل قاعدة البيانات

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

الأمر التالي سيقوم بقفل قاعدة البيانات، مما يمنع أي تغييرات جديدة:

بعد ذلك، تحقق من حالة قاعدة البيانات:

Replication in MySQL 3

من هذا الموضع، ستبدأ قاعدة البيانات المتطابقة في النسخ المتماثل من المصدر. ستكون هذه الأرقام مفيدة لاحقًا، لذا احتفظ بسجل لها. إذا تم إجراء أي تغييرات من نفس النافذة، فسيقوم MySQL تلقائيًا بإلغاء قفل قاعدة البيانات. لذلك، يوصى بتنفيذ الخطوات التالية في علامة تبويب أو نافذة طرفية مختلفة. لا تزال قاعدة البيانات مقفلة. قم بتصديرها إلى ملف SQL محمول:

لقد اكتملت المهمة الآن. بعد ذلك، قم بإلغاء قفل قاعدة البيانات:

أخيرًا، اخرج من الشل:

تكوين النسخة المتطابقة

حان الوقت الآن لتكوين قاعدة البيانات المتطابقة.

  • استيراد قاعدة البيانات المصدر

نحن بحاجة إلى نسخة من قاعدة البيانات المصدر على خادم النسخة المتطابقة. سنستخدم ملف SQL الذي قمنا بتصديره سابقًا للقيام بذلك. قم بتشغيل شل MySQL:

بعد ذلك، قم بإنشاء قاعدة بيانات فارغة باستخدام نفس اسم قاعدة البيانات:

بعد ذلك، اخرج من الشل:

الآن، قم باستيراد ملف SQL إلى قاعدة البيانات:

sudo mysql -u

  • تعديل تكوين MySQL

هناك بعض الأشياء المطلوبة للإعلان عنها في ملف تكوين MySQL. افتح ملف التكوين في محرر نصوص:

ستوضع الإدخالات التالية تحت قسم mysqld. وإلا فلن يعمل. الأول هو معرف الخادم. كما ذكرنا سابقًا، يجب أن يكون فريدًا لجميع الخوادم في تكوين النسخ المتماثل للمصدر والنسخة المتطابقة. للتوضيح، تم تعيينه على 2:

بعد ذلك، أضف السطور التالية:

Replication in MySQL 2

هنا، فقط relay-log هو إدخال جديد. إنه السجل الذي ينشئه خادم النسخة المتطابقة أثناء النسخ المتماثل. تنسيق السجل هو نفسه السجل الثنائي. احفظ ملف التكوين، وأعد تشغيل MySQL:

  • تمكين النسخ المتماثل

أخيرًا، نحن جاهزون لتمكين النسخ المتماثل من داخل MySQL. قم بتشغيل شل MySQL:

قم بتشغيل الأمر التالي. أولاً، قم بتغيير عنوان IP واسم المستخدم وكلمات المرور وفقًا لذلك:

CHANGE MASTER TO MASTER_HOST

يقوم الأمر بما يلي:

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

أخيرًا، قم بتنشيط خادم النسخة المتطابقة:

START REPLICA

  • متنوعات

هل تحتاج إلى التحقق من تفاصيل الحالة الحالية للنسخة المتطابقة؟ قم بتشغيل الأمر التالي في شل MySQL. الـ \G في النهاية مخصصة لإعادة ترتيب النصوص لجعلها أكثر سهولة في القراءة:

Replication in MySQL 1

إذا كانت هناك مشكلة في الاتصال، فحاول بدء تشغيل خادم النسخة المتطابقة لتجاوزها:

الخاتمة

ينطوي نسخ MySQL المتماثل على الكثير من الآثار. هذا مجرد عرض موجز لشكله الأساسي. ومع ذلك، يمكن توسيعه بسهولة ليشمل تكوينات متعددة للمصدر والنسخة المتطابقة. ستنطبق الخطوات نفسها أيضًا على أي تكوينات معقدة ذات مستوى أعلى. من الجيد دائمًا اختبار أي تكوين بعد ذلك. جرب إجراء بعض عمليات insertdelete أو update على قاعدة بيانات المصدر. إذا كان الإعداد يعمل، فيجب أن تلتقط قاعدة بيانات النسخة المتطابقة كل شيء بشكل صحيح.

علاوة على ذلك، يمكنك إلقاء نظرة على المزيد من الموارد في مدونتنا والتي تغطي ما يمكنك القيام به باستخدام MySQL:

حوسبة سعيدة!

 

author

Hark Labs

المؤلف · CloudSigma

Preslav Dobrev هو مصمم إبداعي في CloudSigma، يركز على هوية أعمال متسقة باستخدام قنوات التسويق التقليدية والمبتكرة. هو بارع في دمج الرؤية الفنية مع التسويق الاستراتيجي لخلق سرد قصصي مؤثر للعلامة التجارية.

التعليقات

لا توجد تعليقات بعد. كن أول من يعلق.