管理獨立備份
第 2 代
目前,獨立備份功能僅適用於 Databases for MySQL、Databases for PostgreSQL 及 Databases for MongoDB。
獨立備份標誌著 Cloud Databases Gen 2 在備份資料管理方式上的根本性轉變。 與緊密綁定於資料庫執行個體生命週期的傳統備份不同,獨立備份是以獨立且可配置的服務執行個體形式存在,並擁有自己的生命週期,讓您即使在來源資料庫執行個體被刪除後,仍能保留備份資料。 獨立備份將作為獨立的服務實例進行計費。 如需更多資訊,請參閱「獨立備份計費」。
什麼是獨立備份?
獨立備份是指與您的資料庫服務執行個體獨立運作的備份執行個體。 每個獨立備份都是一項完全受管的服务資源,並具備以下專屬特性:
- 服務名稱與雲端資源名稱 (CRN)
- 透過 IBM Cloud 資源控制器進行生命週期管理
- 計費與資源追蹤
- 存取控制與權限
此架構在管理備份資料方面提供了更大的靈活性,可支援諸如長期資料保留、合規要求,以及源資料庫可能已不復存在的災難復原情境等應用場景。
與耦合備份的主要差異
| 特性 | 耦合備份 | 獨立備份 |
|---|---|---|
| 生命週期 | 與資料庫執行個體綁定 | 與資料庫執行個體無關 |
| 持續性 | 當實例被刪除時一併刪除 | 在刪除實例後仍可保留 |
| 管理 | 僅限使用者介面 | IBM Cloud 資源控制器 |
| 可見性 | 僅限實例使用者介面 | 資料庫樞紐、資源清單、實例使用者介面 |
| 刪除 | 僅限自動模式(30 天) | 手動與自動 |
| 跨區域副本 | 不支援 | 未來發行 |
| 佈建 | 自動與隨選 | 自動與隨選 |
| 計費 | 隨實例一併提供 | 分項服務計費 |
獨立備份的運作原理
自動建立備份
當您配置第二代 Cloud Databases 執行個體時,系統會自動為您的每日排程備份建立獨立的備份執行個體。 這些備份:
- 會根據您的備份排程,每天自動建立
- 預設為持續 30 天
- 由該服務自動管理
- 出現在您的資源清單和資料庫中心中
按需建立備份
您可以隨時使用「IBM Cloud」資源控制器,建立按需的獨立備份。 這些備份:
- 一經請求即刻建立
- 遵循與自動備份相同的保留政策
- 可在到期前手動刪除
- 在進行重大變更或遷移之前相當有用
備份生命週期
獨立備份遵循以下生命週期:
- 資源配置:已建立備份實例(自動或依需求建立)
- 已啟用:備份可用於還原操作
- 到期:備份達到保留期限結束(預設為 30 天)
- 刪除:備份會自動刪除或手動移除
與關聯備份不同,獨立備份可隨時透過資源控制器手動刪除,讓您能更有效地掌控備份資料及相關成本。
必要條件
在使用獨立備份之前,請確保已針對以下操作設定服務間授權:
- 配置資料庫執行個體
- 更新資料庫執行個體
- 撤銷已設定
preserve: false的資料庫實例的資源 - 配置獨立備份
當資料庫執行個體的設定為 preserve: false 時,在永久刪除該資料庫執行個體的同時,其獨立備份也會一併被刪除。
如需更多資訊,請參閱「服務對服務授權」。
存取您的備份
您可以存取位於多個地點的獨立備份:
- 實例使用者介面:前往您的資料庫實例的「儀表板」,並查看「備份與還原」分頁。
- 資料庫樞紐:在單一集中位置檢視您帳戶中的所有備份。
- 資源清單:獨立備份會顯示為獨立的服務實例。
第二代 Cloud Databases 備份僅能還原至其建立的同一區域內。
檢視獨立備份
獨立備份可在多個位置檢視:
資料庫樞紐
IBM Cloud 控制台可讓您集中檢視帳戶內的所有備份:
- 請前往 IBM Cloud 控制台,並點選「資源清單」>「資料庫」。
- 檢視您的資料庫執行個體及其相關的備份。
- 獨立備份會以獨立的服務實例形式顯示在您的資源清單中。
這有助於您辨識哪些備份可能需要清理或長期保留。
資源清單
獨立備份會以獨立的服務實例形式顯示在您的「IBM Cloud」資源清單中:
- 請前往您的 資源清單。
- 依服務類型篩選,以顯示備份實例。
- 點擊某個備份實例,即可查看詳細資訊並管理其生命週期。
「實例備份」與「還原」分頁
在使用者介面中,請導航至「備份與還原」分頁,您將看到一個表格,其中列出您資料庫的所有可用備份,包括關聯備份和獨立備份。
備份類型可選擇「按需」或「自動」。 每項備份都會列出其類型、備份時間,以及該備份屬於「耦合備份」還是「獨立備份」。
點擊該備份,即可顯示該特定備份的相關資訊,包括其完整 ID 和 CRN。 該處提供了一個「還原」按鈕或預先格式化的 CLI 指令,供您選擇還原選項。
管理獨立備份
設定資料庫執行個體以進行獨立備份
您可以在資料庫執行個體上設定以下功能:
| 特性 | 獨立備份 | 配置 |
|---|---|---|
| 保留期限 | 決定何時可以刪除備份。 自動備份會在保留期限屆滿後自動刪除。 按需備份在保留期限屆滿後,可手動刪除。 | 預設為 30 天的固定期限,且無法進行設定。 |
| 保存備份 | 指定當資料庫執行個體被刪除時,是否應保留備份(包括自動備份和按需備份)。 | 依預設,會設為 false。 在資料庫執行個體被永久刪除後,獨立備份將不復存在。 您可以在資料庫執行個體上啟用此選項,但一旦啟用後便無法再停用。 對於 Databases for MySQL,此功能預設為停用狀態,且無法啟用。 |
| 開始時間 | 指定在資料庫實例上啟動自動備份的一小時時間窗的開始時間。 系統每天都會執行自動備份。 | 此設定值會在資料庫實例配置時設定為預設值,且無法進行設定。 |
您可以在資料庫實例的配置參數中設定允許的設定。 例如,以下設定會讓備份即使在資料庫被刪除後仍會被保留:
ibmcloud resource service-instance-create \
<DATABASE_INSTANCE_NAME> \
<DATABASE_SERVICE_NAME> \
<DATABASE_SERVICE_PLAN_NAME> \
<REGION> \
-g <RESOURCE_GROUP> \
-p '{
"dataservices": {
"backups": {"preserve": true}
}
}'
您可以在資料庫實例配置請求中設定「保留」選項。 以下範例用於設定資料庫執行個體,使其在刪除後仍保留備份:
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"name": "<DATABASE_INSTANCE_NAME>",
"target": "<REGION>",
"resource_group": "<RESOURCE-GROUP>",
"resource_plan_id": "<DATABASE_SERVICE_PLAN_NAME>",
"parameters": {
"dataservices": {
"backups": {
"preserve": true
}
}
}
}'
在使用者介面中執行隨選備份
如果您計劃對實例進行重大變更(例如調整規模或移除資料庫、資料表、集合等),按需備份將非常實用。 若您需要依照排程進行備份,這功能也會很有幫助。 隨選備份會保留 30 天。
若要在使用者介面中建立手動備份,請前往您實例的「備份與還原」分頁,然後點擊「建立備份」。 系統會顯示一則訊息,指出備份正在進行中,且一項隨選備份已新增至「可用備份」清單中。
備份配置完成後,您即可查看備份的詳細資訊,例如備份 CRN、相關聯的資料庫執行個體及其版本、區域、狀態和大小。
使用 CLI 建立獨立備份
若要使用 IBM Cloud 命令列介面 (CLI) 建立隨選獨立備份:
ibmcloud resource service-instance-create \
<BACKUP_INSTANCE_NAME> \
<BACKUP_SERVICE_NAME> \
<BACKUP_SERVICE_PLAN_NAME> \
<REGION> \
-g <RESOURCE_GROUP> \
-p '{
"dataservices": {
"source_dataservice_crn": "<DATABASE_INSTANCE_CRN>"
}
}'
範例:
ibmcloud resource service-instance-create \
my-mysql-backup-20260429 \
databases-independent-backups \
databases-independent-backups-gen2-standard \
us-east \
-g Default \
-p '{
"dataservices": {
"source_dataservice_crn": "crn:v1:bluemix:public:databases-for-mysql:us-east:a/1234567890:abcd-1234-efgh-5678::"
}
}'
配置完成後,您可以在備份實例的「資源控制器擴充功能」欄位中,查看備份詳細資訊,例如相關的資料庫實例及其版本、區域、狀態和大小。
以下是該指令的輸出範例:
ibmcloud resource service-instance --output JSON crn:v1:staging:public:databases-independent-backups:ca-mon:a/cf8d4161fa0243b9a2a5494cd7ff66b7:4be73b7d-a395-4613-83dd-315a6e573e00:: | jq '.[0].extensions'
{
"dataservices": {
"backup": {
"can_be_deleted_after": "<timestamp after which retention duration expires>",
"size_gb": <size of the backup in GB>,
"source_data_service_crn": "<CRN of the database provided at the time of provisioning the backup>",
"type": "<type of the backup, value is either on_demand or automatic>",
"version": "major version of the database"
}
}
}
使用 API 建立獨立備份
若要建立按需獨立備份,請向備份建立端點發送請求:
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"name": "<DATABASE_INSTANCE_NAME>",
"target": "<REGION>",
"resource_group": "<RESOURCE-GROUP>",
"resource_plan_id": "<DATABASE_SERVICE_PLAN_NAME>",
"parameters": {
"dataservices": {
"source_dataservice_crn": "<DATABASE_INSTANCE_CRN>"
}
}
}'
範例:
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"name": "my-mysql-backup-20260429",
"target": "us-east",
"resource_group": "b67d9228670d473097259e2b343de464",
"resource_plan_id": "databases-independent-backups-gen2-standard",
"parameters": {
"dataservices": {
"source_dataservice_crn": "crn:v1:bluemix:public:databases-for-mysql:us-east:a/1234567890:abcd-1234-efgh-5678::"
}
}
}'
刪除獨立備份
若要在獨立備份到期前手動刪除該備份,請執行以下步驟:
ibmcloud resource service-instance-delete <BACKUP_CRN> --force
範例:
ibmcloud resource service-instance-delete e318275d-f860-4e4e-a63b-271fb4400c26 --force
備份採用基礎架構層級的增量卷快照。 因此,刪除一個備份可能會導致剩餘備份的佔用空間增加。
刪除備份的動作是永久性的,且無法撤銷。 刪除前,請確認您已不再需要該備份資料。
刪除獨立備份
若要在獨立備份到期前手動刪除該備份,請執行以下步驟:
curl -X DELETE \
https://resource-controller.cloud.ibm.com/v2/resource_instances/${INDEPENDENT_BACKUP_ID} \
-H 'Authorization: Bearer <>'
範例:
curl -X DELETE \
https://resource-controller.cloud.ibm.com/v2/resource_instances/793b4f27-7733-4803-917f-de8e055e2deb \
-H 'Authorization: Bearer <>'
從獨立備份還原
即使來源實例已不存在,獨立備份仍可還原至新的資料庫實例,為災難復原與資料保留情境提供更大的靈活性。
備份資料將還原至新的實例。 新執行個體完成配置後,備份檔案中的資料將還原至新執行個體中。
預設情況下,新執行個體的尺寸會自動調整為您要還原的備份來源執行個體在備份當下的預設磁碟大小,並採用與該來源執行個體相同的主機規格。 若要調整分配給新執行個體的資源,請透過使用者介面 (UI)、命令列介面 (CLI) 或 API 中的選填欄位,來調整新執行個體的規格。 請務必為您的資料和工作負載預留足夠的資源;若實例未獲分配足夠的資源,或備份所佔用的儲存空間超過預設磁碟大小,且未指定磁碟大小,則還原作業將會失敗。
在還原備份的過程中,請勿刪除該備份。 在刪除備份之前,請先等待新實例完成配置,並確認備份已還原。 預設情況下,刪除資料庫實例也會一併刪除其備份。
您可以立即存取已還原的資料庫執行個體,但在資料載入完成之前,I/O 效能會受到影響。 在資料載入完成之前,無法在還原後的實例上建立備份。 您可以透過使用 Activity Tracker 平台上的活動來追蹤水分補充的進度。 如需更多資訊,請參閱 at-events。
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"name": "<DATABASE_INSTANCE_NAME>",
"target": "<REGION>",
"resource_group": "<RESOURCE-GROUP>",
"resource_plan_id": "<DATABASE_SERVICE_PLAN_NAME>",
"parameters": {
"dataservices": {
"restore_backup_id": "<BACKUP_CRN>"
}
}
}'
範例:
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"name": "mysql-restore-abc",
"target": "us-east",
"resource_group": "b67d9228670d473097259e2b343de464",
"resource_plan_id": "databases-for-mysql-gen2-standard",
"parameters": {
"dataservices": {
"restore_backup_id": "crn:v1:bluemix:public:databases-independent-backups:us-east:a/26b19aex04da4475b6e31205fa93248d:793b4f27-7733-4803-917f-de8e055e2deb::"
}
}
}'
在使用者介面中還原備份
若要將備份還原至新的服務實例,請執行下列動作:
- 點擊對應的列,以展開您要還原的備份選項。
- 按一下還原。
- 在「配置」頁面上,請從若干可用選項中進行選擇。
- 請提供新服務實例的名稱。
- 您可以選擇初始資源配置,或在新的執行個體上擴充資源。 請注意,若您減少資源數量,可能會導致配置失敗,或使您的資料庫無法正常運作。
- 點擊「還原備份」。 出現「已開始從備份還原」的訊息。 點擊「您的新執行個體現已可用」後,系統將帶您前往「資源清單」。
在 CLI 中還原備份
資源控制器支援資料庫實例的配置,而配置與還原則由資源控制器命令列介面(CLI)負責。 請使用 resource service-instance-create 命令。
ibmcloud resource service-instance-create <INSTANCE_NAME> <SERVICE-ID>-gen2-<PLAN NAME> <REGION> -p '{"dataservices":{"restore_backup_id":"<BACKUP_CRN>"}}'
範例指令:
ibmcloud resource service-instance-create mysql-restore-abc databases-for-mysql databases-for-mysql-gen2-standard us-east -p '{"dataservices":{"restore_backup_id":"crn:v1:bluemix:public:databases-independent-backups:us-east:a/26b19aex04da4475b6e31205fa93248d:793b4f27-7733-4803-917f-de8e055e2deb::"}}'
- 將
instance_name的值改為您希望為新實例設定的名稱。 service-id即為實例類型(例如 ,databases-for-mysql )。region是您希望新執行個體所在的位置,該區域可能與來源執行個體所在的區域不同。restore_backup_id就是您想要還原的備份檔案。
上述指令將把備份還原至一臺與您原始部署具有相同配置且採用相同託管模式的機器上。
CLI 中的可選參數
可透過命令列介面 (CLI) 使用選填參數。 若您需要自訂資源、變更託管模式,或在新實例上使用 Key Protect 金鑰 進行 BYOK 加密,請使用這些功能。 請參閱下列範例:
ibmcloud resource service-instance-create <INSTANCE_NAME> <SERVICE-ID> gen2-<PLAN NAME> <REGION> -p
'{"restore_backup_id":"BACKUP_ID","key_protect_key":"KEY_PROTECT_KEY_CRN", "storage_gb":"DESIRED_DISK_IN_GB", "host_flavor": "<VALUE>"}'
host_flavor 應選用尺寸合適的主機。 如需更多資訊,請參 閱可用值的清單。
您可以在實例儀表板的「備份與還原」分頁中,於該備份的詳細檢視畫面中,找到針對特定備份的預先格式化指令。
預設情況下,從備份還原時,系統會根據資料庫類型的首選版本來配置實例,而非根據您用以還原的實例所使用的版本。 第二代 Cloud Databases 目前每個資料庫僅支援一個版本。 隨著時間推移,系統將陸續發布新版本;當新版本推出時,您可以透過從備份還原的方式,切換至該版本。
透過 API 還原備份
資源控制器 API 支援資料庫實例的配置與還原。 POST 此建立請求是針對 /resource_instances 端點發送的 xml-ph-0000@deepl.internal 請求。
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"name": "<INSTANCE_NAME>",
"target": "<REGION>",
"resource_group": "<YOUR-RESOURCE-GROUP>",
"resource_plan_id": "<SERVICE-ID>",
"parameters":{
"restore_backup_id": "<BACKUP_ID>"
}
}'
參數 name、target、resource_group 以及 resource_plan_id 皆為必填項目,而 restore_backup_id 則是您要還原的備份。
- 將
name的值改為您希望為新實例設定的名稱。 resource_plan_id即為實例類型(例如 ,databases-for-mysql )。target是指您希望新執行個體所在的區域,該區域必須為 Gen 2 區域。restore_backup_id就是您想要還原的備份檔案。
上述指令將把備份還原至一臺與您原始部署具有相同配置且採用相同託管模式的機器上。
API 中的可選參數
可透過資源控制器 API 存取選填參數。 若您需要自訂資源、變更主機規格、部署至特定版本,或在新執行個體上使用「自帶密鑰( Key Protect )」進行加密,請使用這些功能。
若需調整資源,請在請求正文中加入任一選配參數 key_protect_key、storage_gb、host_flavor 或 version,並指定其首選值。
備份加密
獨立備份在靜態儲存時,會採用與資料庫執行個體相同的加密方式進行加密。 如果您使用 Key Protect 來管理資料庫的加密設定,您的備份將使用相同的金鑰進行加密。 如需更多資訊,請參閱 Key Protect 整合。
當您還原使用「Key Protect」金鑰加密的備份時,您可以使用相同的金鑰,也可以使用不同的金鑰。 若您使用不同的金鑰,新實例將以該新金鑰進行加密。
跨帳號還原
獨立備份可在各 IBM Cloud 帳戶間還原,從而支援以下情境:
- 將生產資料還原至開發帳戶以進行測試
- 在組織單位之間遷移資料庫
- 將資料備份至獨立帳戶以進行災難復原
若要將備份還原至另一個帳戶:
- 來源帳戶必須授予目標帳戶對備份資源的存取權限
- 在目標帳戶中建立新執行個體時,請使用備份 CRN
- 請確保目標帳戶具備適當的 IAM 權限
如需有關跨帳戶還原的更多資訊,請參閱「跨帳戶還原」。
業務連續性與災難復原
獨立備份是貴公司業務連續性與災難復原策略中至關重要的一環。 由於它們獨立於來源資料庫執行個體而存在,因此能提供以下方面的保護:
- 意外刪除資料庫
- 資料毀損
- 區域性故障(當備份儲存於不同區域時)
有關 Cloud Databases 的業務連續性與災難復原之完整資訊,請參閱:
下一步
從耦合備份過渡
從耦合備份過渡到獨立備份的過程,會因資料庫服務而異:
支援獨立備份的資料庫
| 資料庫 | 地區 |
|---|---|
| PostgreSQL | ca-mon, in-che, in-mum |
| MongoDB | ca-mon, in-che, in-mum, us-east |
| 表格中所列的資料庫,正在指定區域內從「耦合備份」過渡至「獨立備份」。 |
將分階段為適用之資料庫及區域啟用獨立備份功能。
在為期 30 天的過渡期間:
- 關聯備份與獨立備份並存。
- 所有新的備份皆會以獨立備份的形式建立。
- 現有的關聯備份仍會繼續運作,並會在 30 天後自動刪除。
- 使用者介面會同時顯示這兩種備份類型。
- 無需執行任何動作。 此轉換會自動處理。
- 30 天的過渡期結束後,僅剩獨立備份。
MySQL
Databases for MySQL 自正式發布起,僅支援獨立備份。 MySQL 的部署不包含關聯備份,也沒有過渡期。
獨立備份的計費方式
獨立備份將作為獨立的服務實例進行計費:
- 免費配額:您將獲得免費的備份儲存空間,其容量等同於您的資料庫部署所配置的總磁碟大小。
- 超額費用:超出免費配額的使用量將另行收費。
- 帳單透明度:備份費用會以獨立的明細項目形式顯示在您的帳單上。
有關詳細的定價資訊,請參閱「定價」。
安全及合規性
獨立備份維持與您的資料庫執行個體相同的安全標準:
- 靜態加密:所有備份皆會透過 IBM 所管理的金鑰,或您透過 Key Protect 提供的自有金鑰進行加密。
- 傳輸中加密:在備份建立及還原作業期間,資料均會進行加密。
- 存取控制:IAM 政策用於控制誰可以建立、檢視及還原備份。 如需更多資訊,請參閱「獨立備份的 IAM 權限」。
限制與規範
請注意下列限制:
- 不支援批次操作(批次複製、批次刪除)。
- 無法下載獨立備份;請使用資料庫專用的工具(例如
mysqldump)來建立本機備份。 - 目前尚無法設定備份保留期限(預設為 30 天)。
- 每個資料庫執行個體最多可建立 50 個隨選備份。