本頁面說明如何將備份中的資料還原至與備份來源資料庫相同名稱的資料庫。閱讀本頁前,請先熟悉 備份及還原資料。
就地還原
就地還原功能,可讓您將備份資料還原至備份內容 建立備份的來源資料庫,同時原始資料庫 存在。就地還原功能可避免重新規劃路線 或是以不同的名稱建立資料庫
還原作業使用的目的地資料庫必須 不存在但您可以透過刪除的方式,模擬就地還原作業 然後從備份將資料還原至新資料庫 做為來源資料庫的名稱
執行就地還原作業
如要執行就地還原,請按照下列步驟操作:
- 找出要用於還原作業的備份。
- 刪除現有資料庫。
- 使用已刪除資料庫的備份和資料庫 ID 完成還原作業。
事前準備
建議您在開始就地還原程序前,先完成下列步驟:
在要刪除的資料庫中匯出資料。
如需復原已刪除的資料庫 從匯出作業匯入資料。 如要將已刪除的資料庫復原至相同的資料庫 ID,您必須等到 任何執行中的還原作業已完成,然後:
- 刪除含有資料庫 ID 的現有資料庫,並至少等待 5 分鐘
- 使用資料庫 ID 建立新的資料庫
- 開始匯入作業
擷取並複製資料庫的索引設定。匯出作業 不會擷取索引定義。使用索引設定重新建立 建立索引。請使用以下指令 擷取資料庫的索引設定:
使用
gcloud firestore indexes composite list
擷取複合式索引清單:gcloud firestore indexes composite list --database=DATABASE_ID
請將 DATABASE_ID 替換為資料庫的 ID。
使用
gcloud firestore indexes fields list
擷取單一欄位 (內建) 索引豁免清單。gcloud firestore indexes fields list --database=DATABASE_ID
執行就地還原作業
請完成下列步驟,執行原地還原作業。在刪除資料庫和還原作業完成之間,這項程序需要停機。
還原作業開始後,即無法取消作業,必須等待復原作業 直到作業完成為止還原作業會立即佔用 作業中使用的資料庫 ID。
使用
gcloud alpha firestore backups list
指令找出要使用的備份資料 ,並記下資源名稱。資源名稱會用 格式如下:projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
使用
gcloud firestore databases delete
指令刪除現有資料庫:gcloud firestore databases delete --database='DATABASE_ID'
請將 DATABASE_ID 改成資料庫 ID。
刪除資料庫後,請等待至少 5 分鐘再取得資料庫 ID 就能重新開放使用使用
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 改成資料庫 ID。