從儲存的備份還原叢集

本頁說明如何從儲存的備份檔還原 AlloyDB for PostgreSQL 叢集。使用這個方法可將叢集還原至復原時間範圍之前的狀態,或還原已離線的叢集。

事前準備

  • 您使用的 Google Cloud 專案必須已啟用 AlloyDB 存取權
  • 您必須在使用的 Google Cloud 專案中擁有下列其中一個 IAM 角色:
    • roles/alloydb.admin (AlloyDB 管理員預先定義的 IAM 角色)
    • roles/owner (擁有者基本 IAM 角色)
    • roles/editor (編輯者基本 IAM 角色)

    如果您不具備上述任一角色,請與機構管理員聯絡,並要求存取權。

  • 您必須在使用的 Google Cloud 專案中具備下列所有 IAM 權限:
    • compute.networks.list
    • compute.addresses.create
    • compute.addresses.list
    • compute.globalAddresses.create
    • compute.globalAddresses.list
    • servicenetworking.services.addPeering

    如要取得這些權限,同時遵循最低權限原則,請要求管理員授予 roles/alloydb.admin (AlloyDB 管理員預先定義的 IAM) 角色。

從備份還原

從備份還原時,您需要設定新的叢集。您必須在與備份相同的區域中建立這個新叢集。還原目的地可以與來源叢集位於不同專案。AlloyDB 會建立叢集,並將備份資料還原至該叢集的資料儲存空間。然後在該叢集中建立執行個體,以存取資料。

還原跨區域備份

如要將備份還原至其他區域,必須在目標區域建立隨選備份。 接著,您就可以使用按照需求執行的備份,在目標區域中還原資料。

如要將備份資料還原到其他區域,請按照下列步驟操作:

  1. 在目標地區建立隨選備份
  2. 將隨選備份還原至目標區域中的新叢集

將備份還原至新的 AlloyDB 叢集

您可以使用 Google Cloud 控制台或 Google Cloud CLI,將備份還原至新的 AlloyDB 叢集。

  1. 將備份還原至新的 AlloyDB 叢集。
  2. 控制台

    1. 前往 Google Cloud 控制台的「備份」頁面。

      前往「備份」頁面

    2. 在備份清單中,找出要還原的備份,然後按一下該列的「還原」
    3. 在「叢集 ID」欄位中,輸入將建立的叢集 ID,用於代管還原的資料。
    4. 在「Network」(網路) 清單中,選取要讓新建立的叢集可從中存取的網路。
    5. 如要以客戶自行管理的加密金鑰 (CMEK) 加密新叢集的資料,而不是使用 Google 代管的加密金鑰,請按照下列額外步驟操作:

      1. 按一下「進階加密選項」
      2. 選取「Cloud KMS 金鑰」
      3. 在「金鑰類型」中,選取「Cloud KMS」
      4. 從顯示的選單中選取客戶自行管理的金鑰。

        Google Cloud 控制台會將這個清單限制為與新叢集位於相同 Google Cloud 專案和區域的鍵。如要使用不在清單中的金鑰,請按一下「找不到您的金鑰嗎?輸入金鑰資源名稱,然後在隨即顯示的對話方塊中輸入金鑰的資源名稱。

        請注意,在 AlloyDB 中使用 CMEK 需要進行額外設定。詳情請參閱「搭配使用 CMEK 與 AlloyDB」。

    6. 按一下「還原」

    gcloud

    如要使用 gcloud CLI,您可以安裝及初始化 Google Cloud CLI,也可以使用 Cloud Shell

    使用 gcloud alloydb clusters restore 指令建立叢集,並將備份資料還原至該叢集。

    gcloud alloydb clusters restore CLUSTER_ID \
        --backup=BACKUP_ID \
        --network=NETWORK \
        --region=REGION_ID \
        --project=PROJECT_ID\
        --async

    這項指令會傳回作業,您可以使用 gcloud alloydb operations describe 指令查詢作業狀態。

    gcloud alloydb operations describe OPERATION_ID \
        --region=REGION_ID \
        --project=PROJECT_ID
    • CLUSTER_ID:要建立的叢集 ID。
    • BACKUP_ID:要還原到新叢集的備份 ID。
      如要從其他專案的備份還原,請將其替換為完整備份路徑,格式如下:
      projects/SOURCE_PROJECT/locations/SOURCE_REGION/backups/SOURCE_BACKUP
    • NETWORK:您希望新建立的叢集可從中存取的虛擬私有雲網路名稱。
    • REGION_ID:來源備份檔的儲存區域 ID,也是新叢集的建立區域。
    • PROJECT_ID:新叢集所在的專案 ID。

    如要使用客戶自行管理的加密金鑰 (CMEK) 加密新叢集的資料,而非預設的 Google 管理加密,請提供下列額外引數:

    • --kms-key=KEY_ID:要使用的 CMEK 金鑰 ID。
    • --kms-keyring=KEYRING_ID:金鑰環的 ID。
    • --kms-location=LOCATION_ID:該金鑰環區域的 ID。請注意,這必須與叢集區域相符。
    • --kms-project=PROJECT_ID:金鑰環的專案 ID。

    如要還原已啟用 Private Service Connect 的叢集,請務必新增 --enable-private-service-connect 標記。

  3. AlloyDB 建立叢集後,請建立主要執行個體

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

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

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

後續步驟