یک بازیابی در محل انجام دهید

در این صفحه نحوه بازیابی اطلاعات موجود در یک نسخه پشتیبان به پایگاه داده ای با همان نام پایگاه داده منبع پشتیبان توضیح داده شده است. قبل از خواندن این صفحه، باید با پشتیبان‌گیری و بازیابی اطلاعات آشنا باشید.

بازیابی در محل

یک بازیابی در محل به شما امکان می دهد یک پایگاه داده را از یک نسخه پشتیبان به پایگاه داده منبعی که پشتیبان را ایجاد کرده است بازیابی کنید در حالی که پایگاه داده اصلی هنوز وجود دارد. بازیابی در محل به شما کمک می کند از مسیریابی مجدد ترافیک یا ایجاد پایگاه داده با نام دیگری جلوگیری کنید.

عملیات بازیابی باید از پایگاه داده مقصدی استفاده کند که قبلاً وجود ندارد. با این حال، می توانید با حذف پایگاه داده منبع و سپس بازیابی از یک نسخه پشتیبان به یک پایگاه داده جدید با همان نام پایگاه داده منبع، یک بازیابی در محل را شبیه سازی کنید.

یک بازیابی در محل انجام دهید

برای انجام بازیابی در محل، این مراحل را دنبال کنید:

  1. پشتیبان مورد استفاده برای عملیات بازیابی را شناسایی کنید.
  2. پایگاه داده موجود را حذف کنید.
  3. از پشتیبان گیری و شناسه پایگاه داده پایگاه داده حذف شده برای تکمیل عملیات بازیابی استفاده کنید.

قبل از شروع

توصیه می کنیم قبل از شروع فرآیند بازیابی در محل، مراحل زیر را تکمیل کنید:

  1. داده ها را در پایگاه داده ای که حذف خواهید کرد صادر کنید .

    اگر نیاز به بازیابی پایگاه داده حذف شده دارید، داده ها را از عملیات صادرات وارد کنید . برای بازیابی پایگاه داده حذف شده در همان شناسه پایگاه داده، باید منتظر بمانید تا عملیات بازیابی در حال اجرا تکمیل شود و سپس:

    1. پایگاه داده موجود را با شناسه پایگاه داده حذف کنید و حداقل 5 دقیقه صبر کنید
    2. یک پایگاه داده جدید با شناسه پایگاه داده ایجاد کنید
    3. عملیات واردات را شروع کنید
  2. پیکربندی فهرست پایگاه داده خود را بازیابی و کپی کنید. عملیات صادرات تعاریف شاخص را در بر نمی گیرد. پس از تکمیل عملیات بازیابی در محل، از پیکربندی فهرست برای ایجاد مجدد نمایه ها استفاده کنید. برای بازیابی پیکربندی فهرست پایگاه داده خود از دستورات زیر استفاده کنید:

    • برای بازیابی فهرستی از ایندکس‌های ترکیبی، از 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 alpha 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 alpha firestore databases restore شروع کنید:

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

    DATABASE_ID با شناسه پایگاه داده جایگزین کنید.

بعدش چی