本頁說明如何執行 Memorystore for Valkey 備份作業。閱讀本頁面之前,請先熟悉備份作業。
事前準備
- 請確認您或所用的使用者帳戶具備執行所需動作的必要權限。 - Memorystore 管理員和 Memorystore 編輯者角色可以執行所有備份作業。Memorystore 檢視者角色可以查看及匯出備份。 
建立按照需求執行的備份
如要建立隨選備份,請使用 gcloud memorystore instances
backup 指令。
gcloud
gcloud memorystore instances backup INSTANCE_ID \ --backup-id=BACKUP_ID \ --ttl=TTL_PERIOD \ --project=PROJECT_ID \ --location=REGION_ID
更改下列內容:
- INSTANCE_ID:Memorystore for Valkey 執行個體的 ID。
- BACKUP_ID:備份的 ID,例如 march-2025-backup。
- TTL_PERIOD:備份的存留時間 (TTL)。備份達到存留時間上限後,Memorystore for Valkey 會自動刪除備份。 - 請將這個參數的值設為天數 (例如 - 14d)。最小值為 1 天。如未指定值,預設值為 100 年。
- PROJECT_ID:您的專案 ID。 
- REGION_ID:執行個體所在的區域 (例如 - us-east1)。
指令會傳回作業名稱,格式如下:
projects/PROJECT_ID/locations/REGION_ID/operations/operation-UID
如要查看作業狀態,請使用 gcloud memorystore operations describe 指令。
gcloud memorystore operations describe projects/PROJECT_ID/locations/REGION_ID/operations/operation-UID
如要列出專案和區域中的所有作業,請使用 gcloud memorystore operations list 指令。
gcloud memorystore operations list --projects=PROJECT_ID \ --location=REGION_ID
設定自動備份排程
您可以在建立執行個體時設定每日備份排程,也可以對現有執行個體啟用每日備份排程。
建立啟用自動備份排程的執行個體
以下範例說明如何在建立執行個體時設定每日備份時間表。如要瞭解建立執行個體時可用的其他選項,請參閱「建立執行個體」。
gcloud
gcloud memorystore instances create INSTANCE_ID \ --automated-backup-config-mode=enabled \ --fixed-frequency-schedule-start-time-hours=START_TIME \ --automated-backup-config-retention=RETENTION_POLICY
更改下列內容:
- INSTANCE_ID:您要建立的 Memorystore for Valkey 執行個體 ID。
- START_TIME:Memorystore for Valkey 開始備份的時間。請以 HH格式指定時間,並採用世界標準時間的 24 小時制。例如:23。
- RETENTION_POLICY:Memorystore for Valkey 保留各項備份的天數。將這個參數的值設為天數 (例如 - 7d)。最大值為 365 天,預設值為 35 天。- 即使刪除執行個體,Valkey 適用的 Memorystore 仍會保留備份資料,保留期限最長為 365 天。如要在保留期限到期前移除備份,請手動刪除備份。 
在現有執行個體上啟用排定的備份
如要在執行個體上啟用排程備份,請使用 gcloud memorystore instances update 指令。
gcloud
gcloud memorystore instances update INSTANCE_ID \ --automated-backup-config-mode=enabled \ --fixed-frequency-schedule-start-time-hours=START_TIME \ --automated-backup-config-retention=RETENTION_POLICY
更改下列內容:
- INSTANCE_ID:要更新的 Memorystore for Valkey 執行個體 ID。
- START_TIME:時間戳記,指定 Memorystore for Valkey 開始備份的時間。這個時間戳記必須精確到小時,格式為 HH,並以世界標準時間為準 (例如23)。時間戳記也會指定 Memorystore for Valkey 開始備份作業的一小時時間範圍。
- RETENTION_POLICY:Memorystore for Valkey 保留各項備份的天數。將這個參數的值設為天數 (例如 - 7d)。- 即使刪除執行個體,Memorystore for Valkey 仍會在保留期限內保留備份。如要在保留期限到期前移除備份,請手動刪除備份。 
停用現有執行個體的排定備份
如要停用執行個體的排程備份,請使用 gcloud memorystore instances update 指令。
gcloud
gcloud memorystore instances update INSTANCE_ID \ --automated-backup-config-mode=disabled
將 INSTANCE_ID 替換為要更新的 Memorystore for Valkey 執行個體 ID。
與更新執行個體、維護和備份作業的並行
在下列情況下,執行個體的更新作業和維護作業可能會取消進行中的備份作業:
- 如果執行個體正在更新,Memorystore for Valkey 會拒絕備份作業要求。
- 如果備份作業正在進行中,Memorystore for Valkey 會拒絕更新執行個體的傳入作業。
- 維護和備份作業可能會同時進行。如果發生這種情況,Memorystore for Valkey 會略過該執行個體的備份作業。
列出並說明備份
以下各節說明如何尋找備份資訊。
列出備份集合
備份集合包含 Memorystore for Valkey 執行個體的所有備份。如要列出專案和區域的備份集合,請使用 gcloud memorystore backup-collections list 指令。
gcloud
gcloud memorystore backup-collections list \ --project=PROJECT_ID \ --location=REGION_ID
更改下列內容:
- PROJECT_ID:您的專案 ID
- REGION_ID:執行個體所在的區域 (例如 us-east1)
這項指令會傳回備份集合清單。
列出備份集合中的備份
如要列出備份集合中的備份,請使用 gcloud memorystore backup-collections backups list 指令。
gcloud
gcloud memorystore backup-collections backups list \ --backup-collection=BACKUP_COLLECTION --project=PROJECT_ID \ --location=REGION_ID
更改下列內容:
- BACKUP_COLLECTION:備份集合的名稱
- PROJECT_ID:您的專案 ID
- REGION_ID:執行個體所在的區域 (例如 us-east1)
這項指令會傳回備份集合中的備份清單。
描述備份
如要擷取備份資訊,請使用 gcloud memorystore backup-collections backups describe 指令。
gcloud
gcloud memorystore backup-collections backups describe BACKUP_NAME \ --backup-collection=BACKUP_COLLECTION \ --project=PROJECT_ID \ --location=REGION_ID
更改下列內容:
- BACKUP_NAME:備份名稱 (例如 2024-05-01-10-15-00)
- BACKUP_COLLECTION:備份集合的名稱
- PROJECT_ID:您的專案 ID
- REGION_ID:執行個體所在的區域 (例如 us-east1)
指令會傳回類似以下的備份資訊:
backupFiles: - createTime: '2024-11-10T03:52:55.539Z' fileName: 3d2774dab822137c5bac9386f3fa69ee4c73b928.rdb sizeBytes: '694879680' - createTime: '2024-11-10T03:52:54.742Z' fileName: 7f5d99faaefc63ed8292a71da2552db3b06cdcff.rdb sizeBytes: '694925906' - createTime: '2024-11-10T03:52:54.972Z' fileName: 0aac1092a3fb81515aefb6b2421f31eb346c3961.rdb sizeBytes: '694784169' instance: projects/PROJECT_ID/locations/us-east1/instances/instance1 instanceUid: 57130520-636c-4ac7-ad7e-86f7cfb32838 createTime: '2024-11-10T03:52:40.899882388Z' expireTime: '2124-11-10T03:53:02.856981736Z' name: projects/PROJECT_ID/locations/us-east1/backupCollections/dda2f551-b416-47ff-b1cf-684e00483dc9/backups/march-2025-backup nodeType: HIGHMEM_MEDIUM shardCount: 3 state: ACTIVE totalSizeBytes: '2084589755'
刪除備份
如要刪除備份,請使用 gcloud memorystore backup-collections backups delete 指令。
gcloud
gcloud memorystore backup-collections backups delete BACKUP_NAME \ --backup-collection=BACKUP_COLLECTION \ --project=PROJECT_ID \ --location=REGION_ID
更改下列內容:
- BACKUP_NAME:備份名稱 (例如 2024-05-01-10-15-00)
- BACKUP_COLLECTION:備份集合的名稱
- PROJECT_ID:您的專案 ID
- REGION_ID:執行個體所在的區域 (例如 us-east1)
將備份匯出至儲存空間 bucket
您可以將備份匯出至 Cloud Storage bucket。
以下步驟說明如何匯出備份。
- 授予 Memorystore for Valkey 服務代理存取 Cloud Storage 資源的權限。 - 您授予服務代理 Cloud Storage 資源的存取權,Memorystore for Valkey 才能存取目的地 Cloud Storage bucket。此外,Memorystore for Valkey 服務代理程式會使用下列命名格式: - service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com - 將 PROJECT_NUMBER 替換為執行個體或備份檔所在專案的專案編號。 - 授予服務代理程式角色,將 - storage.buckets.get、- storage.objects.create、- storage.objects.delete和- storage.folders.create權限指派給該角色。- 舉例來說,下列指令會將 - Storage Admin角色指派給 Cloud Storage bucket 的服務代理程式:- gcloud- gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com \ --role=roles/storage.admin - 更改下列內容: - BUCKET_NAME:目的地 Cloud Storage 值區的名稱。這個 bucket 必須是區域 bucket,且必須與備份位於相同區域。Memorystore for Valkey 必須具備存取值區的權限,以及在值區內建立資料夾和物件的權限。
- PROJECT_NUMBER:服務代理程式名稱中使用的專案編號。
 
- 如要將備份匯出至 Cloud Storage 值區,請使用 - gcloud memorystore backup-collections backups export指令。- gcloud- gcloud memorystore backup-collections backups export BACKUP_NAME \ --backup-collection=BACKUP_COLLECTION \ --location=REGION_ID \ --gcs-bucket=BUCKET_NAME - 更改下列內容: - BACKUP_NAME:Memorystore for Valkey 備份的名稱
- BACKUP_COLLECTION:備份集合的名稱
- REGION_ID:備份集合所在的區域 (例如 us-east1)
- BUCKET_NAME:Cloud Storage 值區的名稱,不含 gs://前置字串
 
從備份還原資料
如要從備份還原資料,您可以從同一專案中的代管備份植入新執行個體,也可以從 Cloud Storage 值區中的 RDB 檔案植入新執行個體。如要從 RDB 檔案植入執行個體,Memorystore for Valkey 必須具備檔案存取權限。
從備份植入新執行個體
以下範例示範如何將備份資料匯入新執行個體。備份檔必須與執行個體位於相同區域。此外,建立執行個體的主體必須具備備份的 redis.backups.get 權限。
gcloud
gcloud memorystore instances create INSTANCE_ID \ --managed-backup-source=BACKUP_NAME \ --location=REGION_ID \ --shard-count=SHARD_COUNT \ --engine-version=ENGINE_VERSION \ --psc-auto-connections=NETWORK
更改下列內容:
- INSTANCE_ID:您要建立的 Memorystore for Valkey 執行個體 ID。
- BACKUP_NAME:備份名稱。這個名稱的格式如下:projects/PROJECT_ID/locations/REGION_ID/backupCollections/BACKUP_COLLECTION_ID/backups/BACKUP_ID。
- REGION_ID:執行個體所在的區域 (例如 us-east1)。
- SHARD_COUNT:執行個體的分片數量 (1 到 250)。
- ENGINE_VERSION:Memorystore for Valkey 執行個體的版本。可接受的值為 VALKEY_7_2和VALKEY_8_0。如未指定此參數的值,預設值為VALKEY_7_2。
- NETWORK:用於建立執行個體的網路。格式必須為 projects/NETWORK_PROJECT_ID/global/networks/NETWORK_ID。網路 ID 必須與服務連線政策使用的網路 ID 相符。否則無法建立執行個體。
從儲存空間 bucket 中的 RDB 檔案播送新執行個體
您可以將 Cloud Storage 值區中的 RDB 檔案匯入新執行個體。
下列步驟說明如何將 Cloud Storage 值區中 RDB 檔案的資料匯入新執行個體。
- 授予 Memorystore for Valkey 服務代理存取 Cloud Storage 資源的權限。 - 您會授予服務代理程式 Cloud Storage 資源的存取權,讓 Memorystore for Valkey 存取 Cloud Storage bucket 中的 RDB 檔案。此外,Memorystore for Valkey 服務代理程式會使用下列命名格式: - service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com - 將 PROJECT_NUMBER 替換為您建立新執行個體的專案的專案編號。 - 授予服務代理程式的角色必須具備 - storage.buckets.get和- storage.objects.get權限。- 舉例來說,下列指令會將 - Storage Admin角色指派給 Cloud Storage bucket 的服務代理程式:- gcloud- gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com --role=roles/storage.admin - 更改下列內容: - BUCKET_NAME:RDB 檔案所在的 bucket 名稱。這個 bucket 必須是與備份位於相同區域的單一區域 bucket,或是雙區域 bucket,且其中一個區域與備份位於相同區域。Memorystore for Valkey 必須具備存取值區的權限。
- PROJECT_NUMBER:服務代理程式名稱中使用的專案編號。
 
- 如要將 Cloud Storage bucket 中 RDB 檔案的資料匯入新執行個體,請使用 - gcloud memorystore instances create指令。- gcloud- gcloud memorystore instances create INSTANCE_ID \ --gcs-source-uris=URI \ --location=REGION_ID \ --node-type=NODE_TYPE \ --shard-count=SHARD_COUNT - 更改下列內容: - INSTANCE_ID:您要建立的 Memorystore for Valkey 執行個體 ID。
- URI:以半形逗號分隔的一或多個 Cloud Storage 統一資源識別碼 (URI)。例如:gs://my-bucket/folder/file1.rdb,gs://my-bucket/folder/file2.rdb。
- REGION_ID:執行個體所在的區域 (例如 us-east1)。
- NODE_TYPE (選用):執行個體的節點類型。可接受的值如下: - shared-core-nano
- standard-small
- highmem-medium
- highmem-xlarge
 - 如未使用此參數,則 - highmem-medium為預設節點類型。
- SHARD_COUNT:執行個體的分片數量 (1 到 250)。 
 
Cloud Monitoring 指標
如要監控近期的備份和匯入作業,可以使用 Cloud Monitoring 指標。如需 Memorystore for Valkey 備份作業可用的指標清單,請參閱「備份指標」。