從備份保存庫還原 AlloyDB 叢集

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

從已封存的備份還原 AlloyDB 叢集

如要從保存的備份還原 AlloyDB for PostgreSQL 叢集,請按照下列操作說明進行:

  1. 將備份還原至新的備份和災難復原服務叢集。

    控制台

    1. 前往 Google Cloud 控制台的「Vaulted backups」(已封存備份) 頁面。

      • 使用者應在目標 AlloyDB 叢集所在的專案中擁有 roles/alloydb.admin
      • 使用者應在來源備份所在的專案中,擁有 roles/backupdr.restoreUser。

      前往「封存備份」

      「Vaulted backups」(已封存的備份) 頁面只會列出符合下列條件的資料資源:已套用備份方案,而且備份儲存於該專案中的 backup vault。

    2. 選取要還原的備份。在備份詳細資料頁面或 選單中,選取「還原」

      「還原備份」頁面會顯示下列還原選項,供您選取:

      • 「資源類型」會預先填入 AlloyDB
      • 在「資源名稱」中,選取要還原的 AlloyDB 叢集。
      • 點按「備份」後,系統會開啟窗格,顯示所有可用的備份。 選取要還原的特定備份。
      • 在「選擇還原目的地」中,選取要將 AlloyDB 叢集還原至哪個專案。
    3. 按一下「繼續」

    4. 下一個頁面會顯示目前的還原詳細資料,並提示您設定新的叢集:這會根據備份中儲存的設定,建立新的 AlloyDB 叢集。還原作業完成後,即可自訂叢集。使用小寫英文字母、數字和連字號提供新的叢集 ID。 並以英文字母開頭。

    5. 選擇私有連線方法: 如果服務位於 Google 或第三方託管的虛擬私有雲網路,您不必指派外部 IP 位址,即可透過下列兩種方式連線至服務: Google Cloud

      • 私人服務存取權:透過對等互連連線,將叢集指派給單一虛擬私有雲網路。如果需要連線至與 AlloyDB 叢集位於同一虛擬私有雲網路的特定Google Cloud 和第三方服務,請使用這項功能。這需要額外的 API。
      • Private Service Connect:透過許可清單和 Private Service Connect 端點,從一或多個虛擬私有雲網路存取叢集。

    gcloud

    gcloud beta alloydb clusters restore RESTORED_CLUSTER_ID \
        --project=WORKLOAD_PROJECT_ID \
        --region=REGION \
        --backupdr-backup=BACKUP_NAME
    

    更改下列內容:

    • RESTORED_CLUSTER_ID:要還原的新 AlloyDB 叢集 ID。
    • WORKLOAD_PROJECT_ID:您要還原 AlloyDB 叢集的專案 ID。
    • REGION:要還原 AlloyDB 叢集的 Google Cloud 區域。
    • BACKUP_NAME:要還原的備份名稱。
  2. 備份和災難復原服務建立叢集後,請為該叢集建立主要執行個體

    建立新的主要執行個體時,您需要指定其設定,包括大小和旗標;Backup and DR 不會將執行個體設定儲存為備份的一部分。請注意,設定不必與原始主要執行個體的設定完全一致。

    Backup and DR 建立執行個體後,您就可以使用該執行個體存取還原的資料。

  3. 視需要設定讀取集區執行個體,完成新叢集的設定。

將 AlloyDB 叢集還原至某個時間點

  1. 如要將 AlloyDB for PostgreSQL 叢集還原至特定時間點,請按照下列操作說明進行:

    控制台

    1. 前往 Google Cloud 控制台的「Vaulted backups」(已封存備份) 頁面。

      • 使用者必須:

      roles/alloydb.admin,位於目標 AlloyDB 叢集所在的專案中。

      roles/backupdr.restoreUser 來源備份所在的專案。

      前往「封存備份」

      「Vaulted backups」(已封存的備份) 頁面只會列出符合下列條件的資料資源:已套用備份方案,而且備份儲存於該專案中的 backup vault。

    2. 在備份清單頂端,選取「從特定時間點還原」

      畫面上會顯示「從某個時間點將資料還原至新的叢集」窗格。 您可以在這裡選取要還原的時間點,以及要建立的新叢集詳細資料:

      • 選擇時間點:輸入叢集復原期間內的目標時間,還原當時的叢集資料。

      • 設定新叢集:根據備份中儲存的設定建立新的 AlloyDB 叢集。還原作業完成後,您便能自訂叢集。

      請使用小寫英文字母、數字和連字號,提供新的叢集 ID。 並以英文字母開頭。

    3. 選擇私人連線方法:

      如果服務位於 Google 或託管於第三方的虛擬私有雲網路,您無須指派外部 IP 位址,即可透過下列兩種方式連線至服務: Google Cloud

      • 私人服務存取權:透過對等互連連線,將叢集指派給單一虛擬私有雲網路。如果需要連線至與 AlloyDB 叢集位於同一虛擬私有雲網路的特定Google Cloud 和第三方服務,請使用這項功能。這需要額外的 API。

      • Private Service Connect:透過許可清單和 Private Service Connect 端點,從一或多個虛擬私有雲網路存取叢集。

    gcloud

    1. 將備份還原至新的備份和災難復原服務叢集。這項程序包含 2 個步驟。

      首先,您必須找出資料來源 ID:

      gcloud backup-dr data-source-references fetch-for-resource-type alloydb.googleapis.com/Cluster \
          --location=REGION \
          --project=WORKLOAD_PROJECT_ID \
          --filter='dataSourceGcpResourceInfo.gcp_resourcename="projects/WORKLOAD_PROJECT_NUMBER/locations/REGION/clusters/CLUSTER_NAME'
      

      然後執行時間點還原

    2. 如要還原叢集,請在下列指令碼中使用資料來源 ID:

        gcloud beta alloydb clusters restore RESTORED_CLUSTER_ID \
          --project=WORKLOAD_PROJECT_ID \
          --region=REGION \
          --backupdr-data-source=projects/VAULT_PROJECT_ID/locations/REGION/backupVaults/BV_ID/dataSources/DS_ID \
          --point-in-time=POINT_IN_TIME
      

      更改下列內容:

      • WORKLOAD_PROJECT_ID:您要還原 AlloyDB 叢集的專案 ID。
      • REGION:要還原 AlloyDB 叢集的 Google Cloud 區域。
      • RESTORED_CLUSTER_ID:要還原的新 AlloyDB 叢集 ID。
      • VAULT_PROJECT_ID:包含備份保存庫的專案 ID。
      • BV_ID:備份儲存空間的 ID。
      • DS_ID:資料來源的 ID。
      • POINT_IN_TIME:要將叢集還原至的特定時間點。範例值為「2025-10-10T10:16:10Z」
  2. 備份和災難復原服務建立叢集後,請為該叢集建立主要執行個體

    建立新的主要執行個體時,您需要指定其設定,包括大小和旗標;Backup and DR 不會將執行個體設定儲存為備份的一部分。請注意,設定不必與原始主要執行個體的設定完全一致。

    Backup and DR 建立執行個體後,您就可以使用該執行個體存取還原的資料。

  3. 視需要設定讀取集區執行個體,完成新叢集的設定。

列出 backup vault 中的備份

列出備份並選取要還原的備份。您可以找出資料來源 ID,然後使用下列指令列出資料來源中的所有備份:

      # Find the data source id
      gcloud backup-dr data-source-references fetch-for-resource-type alloydb.googleapis.com/Cluster \
        --location=REGION \
        --project=WORKLOAD_PROJECT_ID \
        --filter='dataSourceGcpResourceInfo.gcp_resourcename="projects/WORKLOAD_PROJECT_NUMBER/locations/REGION/clusters/CLUSTER_NAME "'

      # List backups
      gcloud backup-dr backups list \
        --project=VAULT_PROJECT_ID \
        --location=REGION \
        --backup-vault=BV_ID \
        --data-source='projects/VAULT_PROJECT_ID/locations/REGION/backupVaults/BV_ID/dataSources/DS_ID'

更改下列內容:

  • REGION: Google Cloud 區域。
  • WORKLOAD_PROJECT_ID:AlloyDB 叢集所在的專案 ID。
  • WORKLOAD_PROJECT_NUMBER:AlloyDB 叢集所在專案的編號。
  • CLUSTER_NAME:AlloyDB 叢集名稱。
  • VAULT_PROJECT_ID:包含備份保存庫的專案 ID。
  • BV_ID:備份儲存空間的 ID。
  • DS_ID:資料來源的 ID。