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

MongoDB / المتقدم: التشغيل الموزع والقابل للتعافي / الدرس 16

النسخ والتعافي وأدلة الاستعادة

اختر نسخاً قابلة للتعافي من متطلبات الفقد والزمن، وميز أدوات الذاتي واللقطات وقدرات Atlas دون ضمانات عامة مختلقة.

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

أهداف الدرس

  • شرح النسخ المنطقي وحدود الاتساق والاستعادة.
  • التحقق من بيانات العمل والنسخ المستقلة.

تتبع طريقة النسخ هدف التعافي

يحدد RPO الفقد وRTO الزمن. لا يضمن تصدير ليلي تاريخ خمس دقائق. لأداتي mongodump وmongorestore توافق ودلالات وليستا لقطة عامة لكل بنية. تحتاج لقطة الملفات إجراء اتساق. تختلف ميزات Atlas حسب النشر والمستوى، فتحقق من الاحتفاظ والاستعادة الفعليين.

احصر أكثر من عدد الوثائق

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

javascript mongosh توضيحية؛ النتائج المتوقعة مستنتجة وليست قياسات.
db.getSiblingDB('quay_lab').bookings.getIndexes();
db.getSiblingDB('quay_lab').getCollectionInfos({ name: 'bookings' });

تحتاج الرؤية منحاً مناسبة وتعتمد التعريفات على البيئة.

تحتاج الكتابة المتزامنة استراتيجية اتساق مدعومة

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

افحص ثابت الاستعادة بمستواه الصحيح

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

javascript mongosh توضيحية؛ النتائج المتوقعة مستنتجة وليست قياسات.
db.getSiblingDB('restored_quay_lab').bookings.aggregate([
  { $project: { total: 1, lineTotal: { $sum: '$lines.amount' } } },
  { $match: { $expr: { $ne: ['$total', '$lineTotal'] } } },
  { $sort: { _id: 1 } }
]);

المتوقع للعددي المتسق عدم اختلاف؛ يحتاج الغياب والخطأ فحص نوع منفصلاً.

أثبت الاستقلال وملكية الخدمة المنضبطة

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

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

تستعيد النسخة الوثائق ولا تعمل الخدمة

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

يفترض نجاح النسخ من انتهاء المهمة فقط

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

تُعامل مجموعة النسخ كتعافٍ تاريخي

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

اختبر فهمك

1. النسخة ليلية فقط ويقبل العمل فقد عشر دقائق. هل ثبت الهدف؟

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

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

2. لماذا تفحص المستعاد بدور الخدمة لا الإدارة فقط؟

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

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

أهم ما تعلمته

  • يعتمد التعافي على الاتساق والبنية والبيانات الوصفية والتاريخ المستقل.
  • يثبت التدريب ما لا تثبته مهمة النسخ وحدها.

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