根據預設,AlloyDB for PostgreSQL 會使用 Google 管理的加密方式,持續備份資料,並提供 14 天的復原期。本頁說明如何透過下列兩種方式調整這項預設行為:
事前準備
- 您使用的 Google Cloud 專案必須已啟用 AlloyDB 存取權。
- 您必須在使用的 Google Cloud 專案中擁有下列其中一個 IAM 角色:
roles/alloydb.admin
(AlloyDB 管理員預先定義的 IAM 角色)roles/owner
(擁有者基本 IAM 角色)roles/editor
(編輯者基本 IAM 角色)
如果您不具備上述任一角色,請與機構管理員聯絡,並要求存取權。
管理持續備份和復原
本節說明如何使用 Google Cloud CLI 或 Google Cloud 控制台指令,在叢集上設定、停用或重新啟用持續備份和復原功能。
設定持續備份
您可以設定叢集持續備份系統的復原時間範圍和加密設定。
如果縮小復原時間範圍,AlloyDB 會立即縮短可執行時間點復原的過去時間範圍。舉例來說,如果將時間範圍從 14 天縮短為 7 天,系統就無法還原 7 天前的時間點。
如果增加時間範圍,系統會即時擴大時間點還原的可用時間範圍,直到達到您指定的新上限為止。舉例來說,如果將回溯期從 7 天改為 14 天,系統需要額外 7 天,才能將回溯期有效大小擴展至新的上限 (14 天)。
設定方案後,系統最多可能需要 24 小時,才能完成持續備份並啟用持續復原功能。如要加快備份作業,不必等待 24 小時,並避免資料遺失,設定方案後可以進行隨選備份。
控制台
前往「Clusters」(叢集) 頁面。
在「資源名稱」欄中,按一下叢集。
按一下「資料保護」。
在「持續備份與復原政策」下方,點選「編輯」。
在「可還原的時間範圍 (以天為單位)」欄位中,輸入新的可還原時間範圍大小。
如要使用特定客戶自行管理的加密金鑰 (CMEK),而非叢集的加密設定,加密這個叢集的連續備份和資料變更記錄,請按照下列額外步驟操作:
按一下「進階加密選項」。
按一下「客戶自行管理的加密金鑰 (CMEK)」單選按鈕。
按一下「選取客戶管理的金鑰」清單,然後選取金鑰。
按一下「Update」。
gcloud
如要使用 gcloud CLI,可以安裝及初始化 Google Cloud CLI,也可以使用 Cloud Shell。
如要在叢集上設定持續備份和復原功能,請使用 gcloud alloydb clusters
update
指令。
gcloud alloydb clusters update CLUSTER_ID \
--continuous-backup-recovery-window-days=WINDOW_LENGTH \
--region=REGION_ID \
--project=PROJECT_ID
更改下列內容:
CLUSTER_ID
:叢集 ID。WINDOW_LENGTH
:這個叢集的持續備份和復原期間長度 (以天為單位)。值必須介於1
至35
之間 (含)。這個引數的值會定義連續備份和復原的下列兩個方面:
相較於目前,您可根據連續備份執行時間點復原的最遠時間點。
AlloyDB 在儲存空間中保留連續備份和資料變更記錄的時間長度。為確保您可以在復原時間範圍內的任何時間點還原資料,AlloyDB 會保留備份和記錄檔,時間比指定值多一天。
此引數為選用項目。如未加入,AlloyDB 會將復原時間範圍設為 14 天。
REGION_ID
:叢集所在區域的 ID。PROJECT_ID
:叢集所在的專案 ID。
如要使用特定客戶自行管理的加密金鑰 (CMEK),而非叢集的加密設定,加密這個叢集的連續備份和資料變更記錄,請提供下列額外引數:
--continuous-backup-encryption-key=
KEY_ID:要使用的 CMEK 金鑰 ID。--continuous-backup-encryption-key-keyring=
KEYRING_ID: 金鑰環的 ID。--continuous-backup-encryption-key-location=
LOCATION_ID: 金鑰環所在區域的 ID。請注意,您指定的地區必須與叢集的地區相符。--continuous-backup-encryption-key-project=
PROJECT_ID:金鑰環的專案 ID。
如要在 AlloyDB 中使用 CMEK,您需要完成一些額外的設定步驟。詳情請參閱「搭配使用 CMEK 與 AlloyDB」。
停用持續備份與復原功能
停用持續備份功能後,叢集就無法使用時間點復原功能。如要再次使用這項功能,請按照下一節的說明重新啟用連續備份。
控制台
前往「Clusters」(叢集) 頁面。
在「資源名稱」欄中,按一下叢集。
按一下「資料保護」分頁標籤。
在「持續備份與復原政策」下方,點選「編輯」。
取消勾選「Google 代管的持續資料保護機制」核取方塊。
按一下「Update」。
gcloud
如要在叢集上停用持續備份與還原功能,請使用 gcloud alloydb clusters
update
指令。
gcloud alloydb clusters update CLUSTER_ID \
--no-enable-continuous-backup
--region=REGION_ID \
--project=PROJECT_ID
更改下列內容:
CLUSTER_ID
:叢集 ID。REGION_ID
:叢集所在區域的 ID。PROJECT_ID
:叢集所在的專案 ID。### 啟用持續備份
如果先前停用持續備份功能,重新啟用後即可再次使用時間點復原功能。AlloyDB 建立第一個後續備份時,復原時間範圍就會開始。如要盡快啟用時間點還原功能,請在重新啟用持續備份後,立即建立隨選備份。否則,AlloyDB 會在下次每日備份時開始復原程序。
控制台
前往「Clusters」(叢集) 頁面。
在「資源名稱」欄中,按一下叢集。
按一下「資料保護」。
在「持續備份與復原政策」下方,點選「編輯」。
勾選「Google 代管的持續資料保護機制」核取方塊。
按一下「Update」。
gcloud
如要在停用叢集的持續備份設定後重新啟用,請按照重新設定持續備份的相同程序操作,並在 gcloud CLI 指令中加入 --enable-continuous-backup
引數:
gcloud alloydb clusters update CLUSTER_ID \
--enable-continuous-backup \
--continuous-backup-recovery-window-days=WINDOW_LENGTH \
--region=REGION_ID \
--project=PROJECT_ID
更改下列內容:
CLUSTER_ID
:叢集 ID。WINDOW_LENGTH
:這個叢集的持續備份和復原期間長度 (以天為單位)。值必須介於1
至35
之間 (含)。這個引數的值會定義連續備份和復原的下列兩個方面:
相較於目前,您可根據連續備份執行時間點復原的最遠時間點。
AlloyDB 在儲存空間中保留連續備份和資料變更記錄的時間長度。為確保您可以在復原時間範圍內的任何時間點還原資料,AlloyDB 會保留備份和記錄檔,時間比指定值多一天。
此引數為選用項目。如未加入,AlloyDB 會將復原時間範圍設為 14 天。
REGION_ID
:叢集所在區域的 ID。PROJECT_ID
:叢集所在的專案 ID。
如要使用特定客戶自行管理的加密金鑰 (CMEK),而非叢集的加密設定,加密這個叢集的連續備份和資料變更記錄,請提供下列額外引數:
--continuous-backup-encryption-key=
KEY_ID:要使用的 CMEK 金鑰 ID。--continuous-backup-encryption-key-keyring=
KEYRING_ID: 金鑰環的 ID。--continuous-backup-encryption-key-location=
LOCATION_ID: 金鑰環所在區域的 ID。請注意,您指定的地區必須與叢集的地區相符。--continuous-backup-encryption-key-project=
PROJECT_ID:金鑰環的專案 ID。
如要在 AlloyDB 中使用 CMEK,您需要完成一些額外的設定步驟。詳情請參閱「搭配使用 CMEK 與 AlloyDB」。
設定其他自動備份
本節說明如何啟用或停用叢集的自動備份排程,這項功能與持續備份系統無關。包括設定 AlloyDB 建立這些額外自動備份的頻率,以及保留時間長度。
自動備份設定屬性
每個 AlloyDB 叢集都可以有一項可自訂的自動備份設定,包括下列屬性:
備份時間表。您可以將這項設定設為每週特定幾天,以及這些日子的特定時段。
保留政策,可表示為備份資料的保留時間長度,或保留的備份數量。根據預設,AlloyDB 會保留自動備份 14 天。
系統會自動刪除備份時間早於保留政策的備份資料。詳情請參閱「備份保留和刪除」。
AlloyDB 在取消不完整的自動備份嘗試前,會等待的時間長度。AlloyDB 預設逾時時間為一小時。
資料加密偏好設定:預設的 Google 代管加密,或您提供的客戶自行管理的加密金鑰 (CMEK)。
啟用及設定自動備份
控制台
您可以在 Google Cloud 控制台中啟用及停用自動備份功能,但無法指定備份時間表或其他設定。如要執行這項操作,請改用 gcloud CLI。
如果您在未設定這項功能的叢集上啟用自動備份,AlloyDB 會套用預設設定,每天排定一次自動備份,保留期限為 14 天,並使用 Google 管理的加密機制。
前往「Clusters」(叢集) 頁面。
在「資源名稱」欄中,按一下叢集。
按一下「資料保護」。
在「自動備份政策」下方,按一下「編輯」。
勾選「自動備份」核取方塊。
按一下「Update」。
gcloud
如要使用 gcloud CLI 啟用自動備份功能,請指定備份排程。其他設定選項皆為選填。對於您未明確設定的任何設定選項,AlloyDB 會套用上一節列出的預設值。
每次執行這項指令來定義新的自動備份設定時,AlloyDB 都會以新設定完全取代叢集的目前設定。
如要啟用自動備份功能,但不想指定完整設定,請使用 Google Cloud 控制台。
使用 gcloud alloydb clusters update
指令定義自動備份的建立排程:
gcloud alloydb clusters update CLUSTER_ID \
--automated-backup-days-of-week=DAYS_LIST \
--automated-backup-start-times=UTC_TIMES_LIST \
--region=REGION_ID \
--project=PROJECT_ID
更改下列內容:
CLUSTER_ID
:要定義排程的叢集 ID。DAYS_LIST
:以半形逗號分隔的清單,列出要自動備份的一或多天。有效值為MONDAY
、TUESDAY
、WEDNESDAY
、THURSDAY
、FRIDAY
、SATURDAY
和SUNDAY
。:以半形逗號分隔的清單,列出您希望自動備份作業在指定日期開始執行的時間。
UTC_TIMES_LIST
請以 24 小時制的世界標準時間指定時間,格式為HH:00
。REGION_ID
:叢集所在區域的 ID。PROJECT_ID
:叢集所在的專案 ID。
這個範例會將叢集設為每週一和週四的 UTC 午夜自動備份:
gcloud alloydb clusters update my-cluster \
--automated-backup-days-of-week=MONDAY,THURSDAY \
--automated-backup-start-times=00:00 \
--region=us-central1 \
--project=my-project
如要使用 CMEK 金鑰加密排定的備份作業,而非預設的 Google 代管加密,請提供下列額外引數:
--automated-backup-encryption-key=KEY_ID
:要使用的 CMEK 金鑰 ID。--automated-backup-encryption-keyring=KEYRING_ID
:金鑰環的金鑰 ID。--automated-backup-encryption-location=LOCATION_ID
:該金鑰環區域的 ID。請注意,這必須與叢集的區域相符。--automated-backup-encryption-project=PROJECT_ID
:金鑰環的專案 ID。
如要在 AlloyDB 中使用 CMEK,您需要完成一些額外的設定步驟。詳情請參閱「搭配使用 CMEK 與 AlloyDB」。
您也可以根據要保留的備份資料數量或時間長度,指定自動備份資料保留政策。如要執行這項操作,請加入下列任一引數:
如要讓 AlloyDB 在一段時間內保留所有自動備份,請使用
--automated-backup-retention-period=DURATION
。請將
DURATION
替換為時間長度字串,如gcloud topic datetimes
所述。您最多可以指定一年的時間長度。如要讓 AlloyDB 保留特定數量的備份,請使用
--automated-backup-retention-count=COUNT
。將
COUNT
替換為 AlloyDB 應保留的自動備份數量,最多可保留一年。
停用自動備份功能
控制台
前往「Clusters」(叢集) 頁面。
在「資源名稱」欄中,按一下叢集。
按一下「資料保護」。
在「自動備份政策」下方,按一下「編輯」。
取消勾選「Automate backups」(自動備份) 核取方塊。
按一下「Update」。
gcloud
如要停用自動備份,請使用 gcloud alloydb clusters update
指令。
gcloud alloydb clusters update CLUSTER_ID \
--disable-automated-backup \
--region=REGION_ID \
--project=PROJECT_ID
更改下列內容:
CLUSTER_ID
:要停用自動備份功能的叢集 ID。REGION_ID
:叢集所在區域的 ID。PROJECT_ID
:叢集所在的專案 ID。
查看備份方案
您可以查看叢集的自動或持續備份方案詳細資料。
控制台
前往「Clusters」(叢集) 頁面。
在「資源名稱」欄中,按一下叢集。
按一下「資料保護」。
如要查看叢集備份方案的詳細資料,請參閱「持續備份與復原政策」和「自動備份政策」表格。
gcloud
使用
gcloud alloydb clusters describe
指令顯示叢集的詳細資料。continuousBackupConfig
和continuousBackupInfo
鍵會彙整叢集的持續備份和復原設定。包括是否啟用持續備份、復原時間範圍大小,以及加密設定。continuousBackupInfo
鍵也會顯示持續備份排程:每天備份一次。如果有的話,
automatedBackupPolicy
鍵會摘要說明叢集的自動備份設定。包括是否啟用自動備份,以及顯示備份排程和加密設定。
舉例來說,下列 gcloud alloydb clusters
describe
指令的輸出內容顯示叢集已啟用自動備份功能,且系統會在每週一和週四的 UTC 時間凌晨 1 點左右進行備份。此外,這部手機也啟用了持續備份功能,復原期限為 10 天。
automatedBackupPolicy:
enabled: true
location: us-central1
weeklySchedule:
daysOfWeek:
- MONDAY
- THURSDAY
startTimes:
- hours: 1
clusterType: PRIMARY
continuousBackupConfig:
enabled: true
recoveryWindowDays: 10
continuousBackupInfo:
encryptionInfo:
encryptionType: GOOGLE_DEFAULT_ENCRYPTION
schedule:
- MONDAY
- TUESDAY
- WEDNESDAY
- THURSDAY
- FRIDAY
- SATURDAY
- SUNDAY
clusterType: PRIMARY
createTime: '2023-01-23T02:42:56.953258476Z'
databaseVersion: POSTGRES_14
encryptionInfo:
encryptionType: GOOGLE_DEFAULT_ENCRYPTION
name: [...]
reconciling: false
state: READY
uid: [...]
updateTime: '2023-02-06T19:08:57.367222025Z'