本頁說明如何從儲存的備份檔還原 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 會建立叢集,並將備份資料還原至該叢集的資料儲存空間。然後在該叢集中建立執行個體,以存取資料。
還原跨區域備份
如要將備份還原至其他區域,必須在目標區域建立隨選備份。 接著,您就可以使用按照需求執行的備份,在目標區域中還原資料。
如要將備份資料還原到其他區域,請按照下列步驟操作:
- 在目標地區建立隨選備份。
- 將隨選備份還原至目標區域中的新叢集。
將備份還原至新的 AlloyDB 叢集
您可以使用 Google Cloud 控制台或 Google Cloud CLI,將備份還原至新的 AlloyDB 叢集。
- 將備份還原至新的 AlloyDB 叢集。
- 前往 Google Cloud 控制台的「備份」頁面。
- 在備份清單中,找出要還原的備份,然後按一下該列的「還原」。
- 在「叢集 ID」欄位中,輸入將建立的叢集 ID,用於代管還原的資料。
- 在「Network」(網路) 清單中,選取要讓新建立的叢集可從中存取的網路。
如要以客戶自行管理的加密金鑰 (CMEK) 加密新叢集的資料,而不是使用 Google 代管的加密金鑰,請按照下列額外步驟操作:
- 按一下「進階加密選項」。
- 選取「Cloud KMS 金鑰」。
- 在「金鑰類型」中,選取「Cloud KMS」。
從顯示的選單中選取客戶自行管理的金鑰。
Google Cloud 控制台會將這個清單限制為與新叢集位於相同 Google Cloud 專案和區域的鍵。如要使用不在清單中的金鑰,請按一下「找不到您的金鑰嗎?輸入金鑰資源名稱,然後在隨即顯示的對話方塊中輸入金鑰的資源名稱。
請注意,在 AlloyDB 中使用 CMEK 需要進行額外設定。詳情請參閱「搭配使用 CMEK 與 AlloyDB」。
- 按一下「還原」。
CLUSTER_ID
:要建立的叢集 ID。BACKUP_ID
:要還原到新叢集的備份 ID。
如要從其他專案的備份還原,請將其替換為完整備份路徑,格式如下:
projects/SOURCE_PROJECT/locations/SOURCE_REGION/backups/SOURCE_BACKUP
NETWORK
:您希望新建立的叢集可從中存取的虛擬私有雲網路名稱。REGION_ID
:來源備份檔的儲存區域 ID,也是新叢集的建立區域。PROJECT_ID
:新叢集所在的專案 ID。--kms-key=KEY_ID
:要使用的 CMEK 金鑰 ID。--kms-keyring=KEYRING_ID
:金鑰環的 ID。--kms-location=LOCATION_ID
:該金鑰環區域的 ID。請注意,這必須與叢集區域相符。--kms-project=PROJECT_ID
:金鑰環的專案 ID。-
AlloyDB 建立叢集後,請建立主要執行個體。
建立新的主要執行個體時,您需要指定其設定,包括大小和旗標;AlloyDB 不會將執行個體設定儲存為備份的一部分。請注意,設定不必與原始主要執行個體完全一致。
AlloyDB 建立執行個體後,您就可以使用該執行個體存取還原的資料。
- 視需要設定讀取集區執行個體,完成新叢集的設定。
控制台
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
如要使用客戶自行管理的加密金鑰 (CMEK) 加密新叢集的資料,而非預設的 Google 管理加密,請提供下列額外引數:
如要還原已啟用 Private Service Connect 的叢集,請務必新增 --enable-private-service-connect
標記。