管理耦合备份

第2代

Cloud Databases Gen 2 为您的数据库实例提供自动每日备份和按需备份。 备份数据会使用自动生成的密钥进行加密;如果您使用“自带密钥”(BYOK)功能,则会使用您自己的密钥进行加密。 您可以将备份恢复到 Cloud Databases 的新实例上。

本主题介绍了除 Databases for MySQL 之外的所有第二代 Cloud Databases 服务的备份管理。 关于 Databases for MySQL,请参阅 “独立备份”

密钥备份的主要特征

  • 生命周期:备份与数据库实例的生命周期相关联,当实例被删除时,备份也会被删除
  • 保留期限:备份将保留30天
  • 加密:备份数据在静止状态下通过 AES-256 加密技术进行加密
  • 还原:备份只能还原到其创建的同一区域内
  • 类型:同时支持自动(每日)备份和按需(手动)备份

重要的备份信息

  • 备份存储已加密。 有关加密密钥的管理,请参阅 IBM® Key Protect 集成。 否则,备份将使用为您的实例自动生成的密钥进行加密。
  • 备份可在不同账户之间进行恢复,但前提是执行恢复操作的用户既拥有该备份的访问权限,又同时拥有源账户和目标账户的访问权限。
  • Cloud Databases 备份文件无法下载。 如果您需要进行本地备份,请使用相应的软件。 例如 ,pg_dump 是一款用于管理 PostgreSQL 备份的有效工具。

删除备份操作不可逆,且无法撤销。 删除前,请确保您不再需要这些备份数据。

在用户界面中查看备份

在用户界面中,转到 “备份与还原”选项卡,您会看到一个表格,其中列出了该数据库的所有可用备份。

备份类型可以是 “按需”“自动”。 每项备份都会列出其类型以及备份的时间。

单击该备份,即可查看该备份的具体信息,包括其完整 ID 和 CRN。 该处提供了一个 “还原” 按钮或一个预格式化的命令行命令,用于还原操作。

执行按需备份

如果您计划对实例进行重大更改(例如调整规模或删除数据库、表或集合),按需备份会非常有用。 如果您需要按计划进行备份,这也会很有帮助。 按需备份将保留30天。

实例均免费提供与总磁盘空间等量的备份存储空间。 如果您的备份存储使用量超过了总磁盘空间,则每1千兆字节将按 $0.095/month 的超额费用收取。 备份文件经过压缩,因此即使使用按需备份,大多数实例也不会超出分配的配额。

在用户界面中创建按需备份

要在用户界面中创建手动备份,请转到实例的 “备份与还原”选项卡,然后点击 “创建备份”。 系统会显示一条提示,说明备份正在进行中,并且该按需备份已被添加到可用备份列表中。

复原备份

备份将恢复到一个新的实例上。 新实例完成配置后,备份文件中的数据将被恢复到新实例中。

默认情况下,新实例的规格会自动调整为与您用于恢复的备份源实例在备份时相同的默认磁盘大小和主机规格。 要调整分配给新实例的资源,请使用 UI、CLI 或 API 中的可选字段来调整新实例的规格。 请确保为您的数据和工作负载分配足够的资源;如果实例未获得足够的资源,或者备份所占用的存储空间超过默认磁盘大小且未指定磁盘大小,则还原操作将失败。

在备份恢复期间,请勿删除源实例。 在删除旧实例之前,请等待新实例配置完成且备份恢复完毕。 删除实例时,其备份也会被删除。

在用户界面中还原备份

要将备份复原到新的服务实例,请执行以下操作:

  1. 单击相应行,展开要还原的备份的选项。
  2. 单击复原
  3. “配置”页面上,从可用选项中进行选择。
    • 请提供新服务实例的名称。
    • 您可以选择初始资源分配方案,从而对新实例的资源进行扩容或缩容。 请注意,如果减少资源配额,可能会导致配置失败或数据库无法正常运行。
  4. 点击“还原备份”。 出现一条“已开始从备份恢复”的消息。 点击 “您的新实例现已可用”将带您进入 “资源列表”

在 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 postgresql-restore-abc databases-for-postgresql databases-for-postgresql-gen2-standard ca-mon -p  '{"dataservices":{"restore_backup_id":"crn:v1:bluemix:public:databases-for-postgresql:ca-mon:a/26b19aex04da4475b6e31205fa93248d:a1e247d8-01c2-3bbe-a5e6-fdb5eb872d2f:backup:f689275f-7da9-4e90-9055-70b02c575492"}}'
  • instance_name 的值更改为您希望为新实例命名的名称。
  • service-id 是指实例类型,例如 databases-for-postgresqldatabases-for-mongodb
  • 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 该端点。

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>"
    }
  }'

参数 nametargetresource_groupresource_plan_id 均为必填项,而 restore_backup_id 则是您要还原的备份。

  • name 的值更改为您希望为新实例命名的名称。
  • resource_plan_id 是实例的类型,例如 databases-for-postgresqlmessages-for-rabbitmq
  • target 是您希望新实例所在的区域,该区域必须是 Gen 2 区域。
  • restore_backup_id 就是您想要还原的备份。

上述命令将把备份恢复到一台与您原始部署具有相同配置且采用相同 托管模式 的机器上。

API 中的可选参数

可通过资源控制器 API 访问可选参数。 如果您需要自定义资源、更改主机规格、部署到特定版本,或者在新实例上使用 Key Protect 密钥进行BYOK加密,请使用这些选项。

如果需要调整资源,请在请求正文中添加以下任一可选参数:key_protect_keystorage_gbhost_flavorversion,并指定其首选值。

备份加密

备份在静止状态下会采用与数据库实例相同的加密方式进行加密。 如果您使用 Key Protect 来管理数据库的加密,则备份将使用相同的密钥进行加密。 如需了解更多信息,请参阅 Key Protect 集成

恢复使用 Key Protect 密钥加密的备份时,您可以使用相同的密钥,也可以使用不同的密钥。 如果您使用的是另一把密钥,则新实例将使用这把新密钥进行加密。

在数据加载完成之前,您可以立即访问已恢复的数据库实例,但此时其I/O性能会有所下降。 在恢复的实例完成初始化之前,无法对其创建备份。 您可以使用平台的“活动追踪”事件来追踪补水情况的完成情况。 如需了解更多信息,请参阅 “平台活动列表”

跨账户恢复

备份可在 IBM Cloud 账户之间进行恢复,从而支持以下场景:

  • 将生产数据恢复到开发账户以进行测试
  • 在组织单位之间迁移数据库
  • 将数据恢复到另一个账户

要将备份恢复到另一个账户:

  1. 源账户必须授予目标账户对备份资源的访问权限
  2. 在目标账户中创建新实例时,请使用备份 CRN
  3. 确保目标账户具有相应的 IAM 权限

备份与恢复职责

  • Cloud Databases 不对上述备份的恢复、及时性或有效性承担责任。
  • 作为用户,您采取的某些操作可能会损害备份的完整性,例如内存和磁盘分配不足。 用户可以通过 API 监控备份是否成功,并定期还原备份以确保其有效性和完整性。 用户可从 Cloud Databases 资源控制器命令行界面Cloud Databases 资源控制器 API 查询最近一次计划备份的详细信息。
  • 作为一项托管服务,Cloud Databases 会监控您的备份状态,并在可能的情况下尝试进行修复。 如果您遇到无法自行解决的问题,请联系支持团队以获取进一步帮助。

业务连续性与灾难恢复

Cloud Databases 提供了保护您的数据和恢复服务功能的机制。 有关更多信息(包括 备份存储区域 ),请参阅 《 了解 Cloud Databases 的业务连续性和灾难恢复 》。