MariaDB / دليل حلول تحريري
تشخيص تأخر النسخة: الجلب أم التطبيق
افصل فشل النقل وتوقف التطبيق وبطء اللحاق بالاعتماد على أدلة القراءة، ولا تتخط الأحداث أو تغير المزامنة لإخفاء العرض.
قاعدة معرفة للقراءة فقط · بلا تعليقات عامة
تعرّف على الأعراض
يصبح تقرير النسخة قديماً، أو ترتفع Seconds_Behind_Master أو تصبح NULL، أو يتوقف مسار المزامنة. لا يثبت الصفر وحده احتواء أحدث معاملة محفوظة، خصوصاً بعد إعادة تشغيل أو خمول أو انقطاع.
افهم الأسباب المحتملة
- قد يفشل الجلب بسبب الوجهة أو المصادقة أو TLS أو غياب السجلات. وقد يتوقف التطبيق لاختلاف البيانات أو المخطط أو يبطؤ للمعاملات الطويلة والأقفال والموارد. قد يكون التأخر مقصوداً بسياسة النسخة المؤجلة.
التقط حالة القناة كاملة
استخدم جلسة مراقبة مصرحاً لها على النسخة المقصودة. توفر الإصدارات الحديثة SHOW REPLICA STATUS وتستخدم الأقدم SHOW SLAVE STATUS. اختر الاتصال الصحيح مع تعدد المصادر وسجل الوقت والإصدار والحقول بصورة خاصة. تختلف الأسماء والصلاحيات بحسب الإصدار. لا تتصل الأمثلة بقاعدة معدة ولا تدعي حالة مرصودة.
SELECT VERSION(), @@hostname;
SHOW REPLICA STATUS;
SELECT @@global.gtid_slave_pos, @@global.gtid_binlog_pos;
تشخيصات قراءة؛ تعامل مع الأسماء والعناوين والخطأ كمعلومات تشغيلية.
شخص مسار الجلب
إذا كانت Slave_IO_Running هي No أو Connecting فافحص Last_IO_Errno وLast_IO_Error والوجهة وموضع الجلب. ميز رفض الاتصال ورفض الاعتماد وغياب سجل مطلوب. قارن أدلة الشبكة والشهادات وفق التشغيل المعتمد. قد يلزم تصحيح وجهة أو اعتماد مصرح، أو استرجاع التاريخ المؤرشف أو إعادة بناء متسقة؛ لا تصنع إعادة المسار حدثاً محذوفاً.
شخص مسار التطبيق
إذا صح الجلب وكانت Slave_SQL_Running هي No فاحفظ Last_SQL_Errno وLast_SQL_Error وموضع السجل والكائن. قد يدل التكرار أو غياب الصف على كتابة محلية أو تجهيز غير متسق. اتبع إجراء الاتساق ولا تتخط المعاملة عشوائياً. إذا عمل التطبيق ببطء فقارن التقدم خلال أوقات متعددة وافحص العمل الطويل وتشبع الموارد. قد تسبب معاملة واردة كبيرة تأخراً مؤقتاً.
SHOW FULL PROCESSLIST;
SHOW GLOBAL STATUS LIKE 'Threads_running';
تؤثر PROCESS في الرؤية وقد يكون نص الاستعلام حساساً؛ افحصه بصورة خاصة.
عالج السبب واحمِ معنى القراءة
تلخص Seconds_Behind_Master حالة توقيت تعتمد على الإصدار ولا تثبت الاتساق وحدها. افحص التأخير المقصود والحالات والأخطاء والتقدم معاً. تتكون GTID من مجال وخادم وتسلسل وتفسر لكل مجال، وليست GTID في MySQL أو عدداً عالمياً واحداً. وجه الطلبات الحساسة للحداثة وفق السياسة أثناء الإصلاح. تتطلب تغييرات السعة أو البنية إجراءً مستقلاً مراجعاً ومصدراً متسقاً ودليل رجوع.
تحقق من نجاح الإصلاح
خذ عينة مؤقتة بعد العلاج المصرح. أكد سلامة الجلب والتطبيق وتقدم التاريخ دون أخطاء جديدة وانخفاض التراكم أو بقاءه ضمن الحد. تحقق من معاملة موجودة معلومة أو نبض معتمد وفق السياسة، ولا تنشئ كتابة إنتاج عرضية لتحسين المراقبة.
امنع تكرار المشكلة
- راقب أخطاء الجلب والتطبيق واتجاه التراكم وحداثة الخدمة منفصلة. احمِ احتفاظاً كافياً بالسجلات وامنع الكتابة المحلية المعتادة واختبر التعافي من مصدر متسق. ضمّن التأخير المقصود وافتراضات الساعة في التنبيهات.