محتويات الدورة

MariaDB / المتقدم: الأدلة والتشغيل الموثوق / الدرس 14

تدريب الاستعادة والتعافي إلى نقطة زمنية

ابنِ إجراء تعافٍ يتوقف قبل تغيير عرضي، ويحفظ الأدلة ويطبق سلسلة نسخ متحققة ويثبت صحة التطبيق قبل التحويل.

وقت القراءة التقريبي: 4 دقيقةتاريخ مراجعة المحتوى
في هذه الصفحة

أهداف الدرس

  • شرح حدود التهيئة والاستعادة وإعادة السجل الثنائي.
  • التحقق من التعافي دون الكتابة فوق مصدر الحادث.

احفظ المصدر وحدد الهدف

بعد حذف عرضي لا يعد إعادة التشغيل خطة تعافٍ؛ يستعيد الخادم الحذف المحفوظ باعتباره عملاً صحيحاً محفوظاً. احفظ النسخ والسجلات والإعداد والتوقيت. حدد آخر معاملة سليمة لا لحظة اكتشاف الحادث فقط. استعد إلى وجهة معزولة مع منع كتابات التطبيق والمهام المجدولة، وأبقِ المصدر المتضرر دليلاً حتى التحقق وسماح سياسة الاحتفاظ بالتنظيف.

تحتاج النسخة الأساسية موضع سجل مطابقاً

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

sql SQL توضيحي؛ النتائج المتوقعة مستنتجة وليست قياسات.
SHOW BINARY LOGS;
SELECT @@global.log_bin, @@global.binlog_format;

أمثلة حصر للقراءة تتطلب صلاحيات المراقبة المناسبة، ولا تستعيد بيانات ولا تثبت اكتمال السلسلة المؤرشفة.

تسبق التهيئة الاستعادة الفيزيائية العادية

قد تحتوي النسخة الفيزيائية صفحات التقطت في لحظات مختلفة. تطبق prepare معلومات التعافي لتحقيق الاتساق، وتحتاج السلاسل التزايدية ترتيب تهيئة خاصاً. استخدم خادماً وأداة متوافقين واحتفظ بنسخة أصلية لم تمس. تكتب copy-back أو move-back ملفات القاعدة وتتطلبان عادة خادماً متوقفاً ودليل بيانات وجهة فارغاً، ولذلك تحتاجان إجراء تشغيل مراجعاً. لا يقدم هذا الدرس أمراً تنفيذياً لاستعادة الملفات.

تحقق من ثابت تجاري مستعاد

بعد استعادة قاعدة التدريب افحص أكثر من عدد الصفوف. يجب توافق bookings وbooking_lines عند المستوى المقصود. يكشف الاستعلام عدم التطابق، وتكون النتيجة فارغة فقط إذا ساوى مجموع كل حجز بنوده مع اعتبار غياب البنود صفراً وفق سياسة التدريب المعلنة. قد يختلف التطبيق الحقيقي بضرائب أو تقريب أو خصومات؛ عدل الثابت وفق التعريف المحاسبي الفعلي.

sql SQL توضيحي؛ النتائج المتوقعة مستنتجة وليست قياسات.
SELECT b.booking_id, b.total, COALESCE(l.line_total, 0) AS line_total
FROM recovered_lab.bookings AS b
LEFT JOIN (
 SELECT booking_id, SUM(amount) AS line_total
 FROM recovered_lab.booking_lines GROUP BY booking_id
) AS l ON l.booking_id = b.booking_id
WHERE b.total <> COALESCE(l.line_total, 0)
ORDER BY b.booking_id;

يفترض الفحص مجموع حجز غير NULL. فراغ النتيجة تحقق مشروط وليس مشاهدة مدعاة.

ينتهي التعافي بقرار خدمة مضبوط

تحقق من صفوف ما قبل الحادث واستبعاد التغيير الضار والقيود والروتينات والحسابات واختبارات التطبيق الأساسية. قس زمن الاستعادة والإعادة مقابل RTO وحد الفقد مقابل RPO. قبل التحويل حدد وجهة الكتابة ومنع الكتابات القديمة لتجنب تاريخين متشعبين. احفظ خطة رجوع وأدلة التحقق. تحسن المزامنة والتعافي بعد الانهيار التوافر ولا تستبدلان النسخ المستقلة ضد الأخطاء المنطقية.

الأخطاء الشائعة وإصلاحها

تتضمن الخدمة المستعادة DELETE العرضية

لماذا يحدث؟
تجاوزت الإعادة حد المعاملة الضارة.
كيف تصلحه؟
ابدأ التعافي المعزول من النسخة الأساسية بحد توقف أسبق متحقق.
كيف تتجنب تكراره؟
افحص الأحداث وحدود المعاملات بدلاً من تخمين وقت الاكتشاف.

لا تستمر الإعادة عبر ملف مفقود

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

كُتبت بروفة الاستعادة فوق النسخة الأصلية

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

اختبر فهمك

1. تنتهي النسخة عند X وتتوفر السجلات إلى Y وتغيب من Y إلى Z ثم تتوفر لاحقاً. هل تضمن التعافي بعد Z؟

اعرض الحل المشروح

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

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

اعرض الحل المشروح

قارن ثوابت مثل مجاميع الحجوزات والبنود، وتحقق من معاملات سليمة وأخرى ضارة مستبعدة حول الحد، واختبر وصول التطبيق للعروض والروتينات بحساب الخدمة. قس زمن التعافي أيضاً؛ لا تكشف أعداد الكائنات وحدها محتوى خاطئاً أو قديماً أو معرفين غير صالحين.

أهم ما تعلمته

  • تعافَ في العزل وأثبت حد آخر معاملة سليمة.
  • اكتمال السلسلة وحمايتها أهم من نجاح نسخ ملف.

المراجع الرسمية