RDS MySQL提供常规和极速级别的库表数据恢复能力。您可将指定的库、表按备份集或时间点恢复至原实例或新实例,无需恢复全部数据,可用于快速订正误操作后恢复数据以及分析历史数据等场景。

前提条件

常规库表恢复

  • RDS实例需满足以下条件:
    • 大版本:8.0、5.7或5.6
    • 系列:高可用版、MySQL 5.7三节点企业版
    • 存储类型:本地SSD盘
    说明
  • 实例的表数量低于50000。
  • 已在控制台备份恢复 > 备份策略 > 基础备份里开启库表恢复功能。
    说明
    • 新实例默认开启库表恢复功能,该功能开启后无法关闭。
    • 开启库表恢复功能前产生的备份数据,无法进行库表恢复。您可以参考恢复全量数据操作进行恢复。
    • 您需要在开启库表恢复功能后,先手动完成一次全量备份,再选择库表恢复功能开启后产生的备份数据进行库表恢复。

极速库表恢复

  • 当前仅华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华南1(深圳)地域支持开启及使用极速库表恢复功能。
  • RDS实例需满足以下条件:
    • 大版本:8.0、5.7或5.6
    • 系列:高可用版
    • 存储类型:本地SSD盘
    说明
  • 实例的存储引擎必须为InnoDB。
  • 实例未开启容量型沙箱实例,如已开启,请先关闭。更多信息,请参见应急恢复
  • 已在控制台备份恢复 > 备份策略 > 基础备份里开启库表恢复功能。
    说明
    • 新实例默认开启库表恢复功能,该功能开启后无法关闭。
    • 开启库表恢复功能前产生的备份数据,无法进行库表恢复。您可以参考恢复全量数据操作进行恢复。
    • 您需要在开启库表恢复功能后,先手动完成一次全量备份,再选择库表恢复功能开启后产生的备份数据进行库表恢复。

功能说明

功能原理图
类别说明
恢复范围恢复实例中指定的库、表。
恢复速度库表恢复速度有常规和极速两种级别,极速库表恢复通过性能型沙箱实例实现,可以在常规库表恢复功能的基础上,提升约50%~95%的恢复速度。如何开启极速库表恢复,请参见开启极速库表恢复
恢复的时间点
  • 如果开启了日志备份,可以恢复到日志备份保留时间内的任意时间点。
  • 如果没有开启日志备份,则可以恢复至已有的数据备份所在的时间点。
说明
  • 恢复的范围取决于日志备份和数据备份保留时长、开启库表备份的时间点等,日志备份和数据备份保留时间最大可设置为730天。您可调用DescribeLocalAvailableRecoveryTime接口查询RDS实例备份可恢复的时间范围。
  • 如需变更备份保留时间,请参见长期保留备份
  • 关于如何选择数据恢复方案,请参见数据恢复方案概览

费用说明

  • 常规的库表恢复功能默认开启,不会产生费用。若使用常规库表恢复功能恢复到新实例,由于数据是恢复到新实例上,因此需要收取新实例费用,费用详情可在创建实例时查看。
    说明
  • 极速库表恢复功能的公测活动已经结束,自2022年10月18日起若将库表恢复速度设置为极速并使用该功能,则以按量付费形式开始计费,具体请参见【通知】2022年10月18日起极速库表恢复功能逐步开始计费。更多商业化策略如下表:
    策略公测商业化
    价格活动期间免费1元/GB/月
    说明 您可以通过应急恢复页面查看已使用的沙箱容量。更多信息,请参见应急恢复
    沙箱实例保留时长1天(公测期间不支持调整)可选择1~730天
    功能支持任意时间点的极速库表恢复支持任意时间点的极速库表恢复

注意事项

  • 新实例默认开启库表恢复功能,该功能开启后无法关闭。
  • 开启库表恢复功能前产生的备份数据,无法进行库表恢复。您可以参考恢复全量数据操作进行恢复。
  • 您需要在开启库表恢复功能后,先手动完成一次全量备份,再选择库表恢复功能开启后产生的备份数据进行库表恢复。
    说明 开启库表恢复后,备份格式会修改(从tar压缩包变成xbstream文件包),用于支持库表恢复。
  • 如果恢复到原实例,恢复过程中会进行主备切换,RDS服务可能会出现约30秒闪断,请确保您的应用有自动重连机制;恢复到新实例不会进行主备切换。
  • 极速库表恢复仅支持恢复到原实例,不支持恢复到新实例。

开启极速库表恢复

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏,单击备份恢复
    说明 页面如果弹出有关开启极速库表恢复的窗口,您可在勾选已知,不再提示后直接单击立即开启免费版立即开启付费版开启该功能。如未跳出该弹窗,请继续执行下列步骤。
  3. 备份恢复页面中选择备份策略页签。
  4. 单击基础备份区域后的编辑,将极速库表恢复设置为开启。
    说明 如果实例未开启库表恢复,则不会有库表恢复速度的选项。需要先单击库表恢复后面的开关开启库表恢复功能。更多库表恢复功能的详情内容,请参见注意事项
  5. 选择CDM付费类型CDM保留时长
  6. 单击确定

操作步骤

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏单击备份恢复,然后单击库表恢复
    说明 如未看到库表恢复按钮,请参见前提条件。
  3. 设置恢复的位置和方式。
    参数说明
    恢复位置
    • 恢复到原实例
    • 恢复到新实例:后续根据步骤5指引,自动新建一个RDS实例,库/表会恢复到新实例中。

      在新实例中验证数据后,您也可以把数据迁移回原实例

    恢复速度
    • 常规
    • 极速:极速库表恢复功能通过性能型沙箱实例实现,可以在常规库表恢复功能的基础上,提升约50%~95%的恢复速度。
    说明 极速库表恢复仅支持恢复到原实例,不支持恢复到新实例。
    恢复方式
    • 按备份集
    • 按时间点:系统先恢复全量备份数据,再恢复增量日志备份数据。此处您可以选择时间点为日志备份保留时间内的任意时间点。如需查看或修改日志备份保留时间,请参见自动备份

      例如:RDS实例的数据备份和日志备份保留时长分别为7天,则最多可以恢复7天内的数据。7天前的备份集未保留,因此无法恢复。

      说明 只有开启了日志备份,才会显示按时间点
    还原模式
    • 逻辑还原:速度较慢。
    • 物理还原:速度较快,但是实例会进行主备切换,所有只读实例会重启。如果实例处于运维状态、指定恢复的库表数据量较少或只读实例复制中断时,后端会自动选择逻辑还原
    说明 实例有只读实例时此选项可见。
  4. 选择要恢复的库表,还可以设置恢复后的库名或表名,然后单击确定
    说明
    • 每次最多选择50个库或者表。
    • 恢复到原实例时,恢复后库名可与原库名相同,但恢复后表名不能与原表名相同。系统默认会在恢复后库名后面添加_backup,您也可以自主修改库名或表名为其他名称。
    • 如果恢复到原实例,请确认底部显示的已勾选的库和表的总大小,以及该实例剩余存储空间,确保剩余存储空间是否足够。
  5. 如果选择恢复到新实例,需选择付费方式并设置新实例的参数。
    • 包年包月:在新建实例时需要支付费用,适合长期需求。
    • 按量付费:按小时扣费。适合短期需求,用完可立即释放实例。
    参数名称说明
    可用区

    可用区是地域中的一个独立物理区域,不同可用区之间没有实质性区别。

    您可以选择将RDS实例与ECS实例创建在同一可用区或不同的可用区。
    说明 新实例的地域与原实例相同,不支持修改。
    规格每种规格都有对应的CPU核数、内存、最大连接数和最大IOPS。具体请参见实例规格表
    存储空间该存储空间包括数据空间、系统文件空间、日志文件空间和事务文件空间。
    网络类型
    • 经典网络:传统的网络类型。
    • 专有网络(推荐):也称为VPC(Virtual Private Cloud)。VPC是一种隔离的网络环境,安全性和性能均高于传统的经典网络。
  6. (可选)单击页面右上角进度条查看数据恢复进度。恢复进度

订正在线数据

恢复位置订正在线数据方法
恢复到原实例使用RENAME TABLE语句对恢复后的表进行重命名。
恢复到新实例
恢复到新实例后,您可使用数据传输DTS将需要的部分或全部库表数据迁移至原实例以订正原实例在线数据。
说明 创建数据迁移任务时,请将已恢复的新实例作为源库,将原实例作为目标库,接入方式均选择云实例

常见问题

  • Q:RDS控制台执行库表恢复操作时,提示“操作失败,该实例状态下不支持此操作。”导致该提示的原因以及解决方法是什么?

    A:RDS控制台的任务为串行运行,当存在进行中的恢复任务或其他任务时,再次重复执行恢复操作会导致该提示。请等待上一个恢复任务或其他任务结束后,再执行下一个恢复任务操作。

  • Q:如果恢复后的表是空的,应该如何解决?

    A:请确认恢复库表时您所选择的时间点表的数据是否存在。若该时间点表无数据,请选择有数据的时间点后再进行库表恢复操作。

  • Q:针对单个误删除操作如何进行数据恢复?

    A:您可使用DMS数据追踪功能按需追踪到目标时间段内的相关更新,汇总生成逆向的回滚语句,并通过数据变更工单最终执行到数据库中完成数据的恢复。

  • Q:RDS云盘实例如何进行库表恢复?
    A:RDS云盘实例不支持在RDS实例控制台使用库表恢复功能,但您可以使用数据库备份DBS对云数据库、ECS自建数据库进行备份与恢复,同时DBS也支持将云上备份集下载到本地。
    说明

相关API

API描述
RestoreTable恢复RDS实例的某个数据库或表到原实例上。
CloneDBInstance恢复RDS实例的某个数据库或表到新实例上。
DescribeLocalAvailableRecoveryTime查询RDS实例备份可恢复的时间范围。