RDS MySQL提供应急恢复功能,该功能基于Copy Data Management(CDM)技术,使用备份数据快速创建出应急实例,可用于恢复演练、开发测试、查询分析和应急容灾等场景。本文介绍如何开启和使用应急恢复功能。

说明

前提条件

  • RDS MySQL实例存储类型为本地SSD盘
  • 在RDS控制台中完成至少一次物理备份。具体操作,请参见自动备份
  • 实例所在的地域如下:华东1(杭州)、华东2(上海)、华东1 金融云、华南1(深圳)、华南2(河源)、西南1(成都)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、中国香港、新加坡、澳大利亚(悉尼)、马来西亚(吉隆坡)、印度尼西亚(雅加达)、日本(东京)、印度(孟买)、德国(法兰克福)、美国(硅谷)、美国(弗吉尼亚)。
  • 实例未开启透明数据加密TDE
  • 仅RDS MySQL高可用版本支持自定义时间点恢复
  • RDS MySQL三节点企业版仅支持按快照时间点恢复。

功能说明

原理图
类别 说明
恢复范围 恢复整个实例。
恢复的时间点
  • 如果开启了日志备份,可以恢复到日志备份保留时间内的任意时间点。
  • 如果没有开启日志备份,则可以恢复至已有的数据备份所在的时间点。

费用说明

应急恢复费用由沙箱存储费用和沙箱实例费用两部分组成:
计费项 费用详情
沙箱存储费用 开启沙箱功能后,系统会自动同步待恢复的数据至沙箱存储中并生成沙箱实例快照,DBS会根据沙箱存储中的数据量产生沙箱存储费用,详情请参见沙箱存储费用
沙箱实例费用 创建沙箱实例后,DBS会根据沙箱实例规格及使用时长产生沙箱实例费用,若您未恢复沙箱实例,将不会产生沙箱实例费用,详情请参见沙箱实例费用

开启沙箱功能

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏中单击备份恢复
  3. 备份恢复页面中选择应急恢复页签。应急实例
  4. 单击开启DBS沙箱
  5. 在弹出的设置沙箱策略对话框中,配置如下参数:
    • 沙箱功能:默认已开启
    • 存储类型:沙箱的存储类型,当前仅容量型收费,更多信息,请参见DBS沙箱费用
      说明
      • 如果您对沙箱实例的存储稳定性和性能要求较高,建议使用性能型。
      • 如需开启性能型,请先关闭容量型后,再开启性能型。
    • 沙箱数据保留天数:沙箱数据用于快速恢复沙箱实例,默认保留7天,表示开启该功能后,系统将拷贝近7天的数据至沙箱存储中,您可以快速恢复该时间段中任意时间点的数据。
  6. 单击确定
    此时,您已开启沙箱功能,首次开启时,系统会保存最新的RDS全量备份集至沙箱存储中,并生成可直接挂载的快照,根据备份数据大小,您可能需要等待5-20分钟。

    可恢复时间范围显示具体的可用时间范围后,即可恢复沙箱实例。

操作步骤

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏中单击备份恢复
  3. 备份恢复页面中选择应急恢复页签。应急实例
  4. 单击恢复沙箱实例
  5. 恢复沙箱实例中,配置如下参数。
    设置沙箱实例
    类别 配置项 说明
    沙箱实例时间点 沙箱数据时间范围 页面显示的可恢复时间范围:沙箱存储中第一个快照时间点到当前时间。实际可恢复时间范围可能小于该值。沙箱存储中第一个快照时间点到备份恢复 > 日志备份中的最后一个binlog的结束时间范围内的数据是可以恢复的,最后一个binlog到当前时间范围暂不保证一定可以恢复。
    恢复方式 当前支持如下两种恢复方式:
    • 按快照时间点恢复(推荐):只能选择生成的快照时间点;恢复快。
    • 自定义时间点恢复:可选择日志保留时间内的任意时间点;恢复时长取决于恢复的日志大小。
      说明 仅RDS MySQL高可用版本开启了日志备份后,支持按自定义时间点进行恢复。
    沙箱实例配置 实例规格 当前支持恢复如下8种规格(各规格有对应的CPU核数、内存):
    • 1核1GB
    • 1核2GB
    • 2核4GB
    • 2核8GB
    • 4核8GB
    • 4核16GB
    • 8核16GB
    • 8核32GB

    不同规格对恢复速度影响不大,高规格实例将在恢复后提供更好的使用性能,更多信息,请参见沙箱实例费用

    实例地区 选择沙箱实例的地域。
    对端专有网络 选择专有网络VPC(Virtual Private Cloud)。

    如需通过ECS访问沙箱实例,需确保此处选择ECS实例所在的VPC。如需创建VPC,请参见创建专有网络和交换机

    对端交换机 选择目标交换机,将指定分配访问沙箱实例的IP网段。
    数据库账号类型 支持如下选项:
    • 复用原数据库账号:数据库账号与原数据库保存一致。
    • 新建高权限账号:在即将恢复的新沙箱实例中,新建一个高权限账号,即拥有实例里所有数据库的权限。您需要输入新的数据库账号密码。同时沙箱实例中仍保留原数据库的账号。
      说明 仅会在当前沙箱实例中创建高权限账号。

      若原数据库存在同名的账号,在沙箱实例中将会被新建的高权限账号覆盖。

  6. 单击确定
    系统将进行预检测,并恢复沙箱实例。待状态变为运行中时,即可访问沙箱实例。

    沙箱实例的账号密码以及所有配置均与原备份数据库完全一致,若您在上一步选择新建高权限账号,您也可以使用新建的高权限账号访问沙箱实例。

    查看沙箱实例
  7. (可选)后续您可以在RDS控制台获取沙箱数据库的实例地址,并通过相应的数据库客户端访问该实例,同时您也可以通过DMS访问沙箱实例通过ECS访问沙箱实例
    说明 访问沙箱实例的客户端设备(例如云服务器ECS)需要和沙箱实例属于同一个专有网络。

订正在线数据

沙箱实例创建完成后,您可使用数据传输DTS将需要的部分或全部库表数据迁移至原实例以订正原实例在线数据。
说明 创建数据迁移任务时,请将新实例作为源库,接入方式选择ECS自建数据库,将原实例作为目标库,接入方式选择云实例

关闭沙箱功能

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏中单击备份恢复
  3. 备份恢复页面中选择应急恢复页签。
    应急实例
  4. 单击设置沙箱策略,在弹出的对话框中,将沙箱功能配置项置为已关闭
  5. 单击确定

相关API

API 描述
CreateSandboxInstance 创建沙箱实例。
DescribeSandboxInstances 查看当前账号下的沙箱实例列表。
DescribeSandboxRecoveryTime 查看沙箱实例的可恢复时间范围。
DeleteSandboxInstance 释放沙箱实例。