إجراء استعادة في مكانها

ينطبق ذلك على إصدارَي Firestore Standard وFirestore Enterprise.

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

الاستعادة في المكان نفسه

تتيح لك عملية الاستعادة الموضعية استعادة قاعدة بيانات من نسخة احتياطية إلى قاعدة البيانات المصدر التي أنشأت النسخة الاحتياطية بينما لا تزال قاعدة البيانات الأصلية موجودة. تساعدك عملية الاستعادة الموضعية في تجنُّب إعادة توجيه الزيارات أو إنشاء قاعدة بيانات باسم مختلف.

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

إجراء عملية استعادة في المكان نفسه

لإجراء عملية استعادة في المكان نفسه، اتّبِع الخطوات التالية:

  1. حدِّد النسخة الاحتياطية التي تريد استخدامها لعملية الاستعادة.
  2. احذف قاعدة البيانات الحالية.
  3. استخدِم النسخة الاحتياطية ومعرّف قاعدة البيانات المحذوفة لإكمال عملية الاستعادة.
تنبيه: إذا كان تطبيقك يستخدم مكتبة عملاء Cloud Firestore في الوضع الأصلي وكان عملاؤك يستخدمون ذاكرة تخزين مؤقت بلا إنترنت، قد تؤدي عملية الاستعادة الموضعية إلى محو عمليات الكتابة في قاعدة البيانات التي تمت استعادتها بدلاً من تجاهل عمليات الكتابة. يمكن أن يحدث هذا الموقف إذا كان العميل المتصل بقاعدة البيانات المحذوفة غير متصل بالإنترنت، وأثناء عدم الاتصال بالإنترنت، تتراكم عمليات الكتابة في ذاكرة التخزين المؤقت في الوقت الذي تقوم فيه بإجراء استعادة في مكانه.

قبل البدء

ننصحك بإكمال الخطوات التالية قبل بدء عملية الاستعادة الموضعية.

استرِدّ إعدادات الفهرس لقاعدة بياناتك وانسخها. استخدِم إعدادات الفهرس لإعادة إنشاء الفهارس بعد إكمال عملية الاستعادة الموضعية. استخدِم الأوامر التالية لاسترداد إعدادات الفهرس لقاعدة بياناتك:

  • استخدِم gcloud firestore indexes composite list لاسترداد قائمة بالفهارس المركّبة:

        gcloud firestore indexes composite list --database=DATABASE_ID
    

    استبدِل DATABASE_ID بمعرّف قاعدة بياناتك.

  • استخدِم gcloud firestore indexes fields list لاسترداد قائمة باستثناءات الفهرس (المضمّنة) ذات الحقل الواحد.

        gcloud firestore indexes fields list --database=DATABASE_ID
    

إجراء عملية استعادة في المكان نفسه

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

بعد بدء عملية الاستعادة، لا يمكنك إلغاؤها وعليك الانتظار حتى تكتمل. تشغل عملية الاستعادة على الفور معرّف قاعدة البيانات المستخدَم في العملية.

  1. استخدِم الأمر gcloud firestore backups list لتحديد النسخة الاحتياطية التي تريد استخدامها لعملية الاستعادة، ثم دوِّن اسم المورد. يستخدم اسم المورد التنسيق التالي:

        projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
    
  2. استخدِم الأمر gcloud firestore databases delete لحذف قاعدة البيانات الحالية:

        gcloud firestore databases delete --database='DATABASE_ID'
    

    استبدِل DATABASE_ID بمعرّف قاعدة البيانات.

  3. يُرجى الانتظار لمدة 5 دقائق على الأقل بعد حذف قاعدة البيانات ليصبح معرّف قاعدة البيانات متاحًا مرة أخرى. ابدأ عملية الاستعادة باستخدام الأمر gcloud firestore databases restore:

    gcloud firestore databases restore \
    --source-backup=projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID \
    --destination-database='DATABASE_ID'
    

    استبدِل DATABASE_ID بمعرّف قاعدة البيانات.

الخطوات التالية