全部产品
Search
文档中心

云数据库 RDS:恢复全量数据

更新时间:Oct 22, 2024

如果您拥有原实例的数据备份和日志备份,可以将其恢复到新实例中,可用于误操作后恢复以及分析历史数据等场景。

前提条件

原实例需要满足如下条件:

  • 实例运行状态为运行中且没有被锁定。

  • 当前没有进行中的迁移任务。

  • 已完成备份。RDS默认有自动备份。更多备份方式,请参见备份方案概览

  • 按时间点恢复时,需要确保日志备份已开启。如何开启,请参见RDS MySQL日志备份

  • 按备份集恢复时,原实例必须至少有一个物理备份。更多信息,请参见自动备份

功能说明

image

类别

说明

恢复范围

恢复整个实例。

新实例各配置项

新实例的白名单设置、备份设置、参数设置和当前实例保持一致。

新实例账号信息

新实例内含恢复时所选择的备份时间点或备份集当时的账号信息。

新实例数据

新实例内的数据与用于恢复的备份文件中的数据一致。

恢复的时间点

  • 未开启日志备份时,只能恢复至已有的数据备份所在的时间点。

  • 开启常规日志备份后,可以恢复到日志备份保留天数内,最早的一个全量备份之后的任意时间点内的数据。

  • 开启任意时间点恢复(日志备份升级版)后,在可任意时间点恢复天数内,可对任意时间点的数据进行恢复。

说明

恢复时长

恢复时长受多种因素影响,如果您有200 GB的数据需要恢复,恢复时长大概在3小时左右,恢复时长计算详情请参见本文常见问题

费用说明

由于数据是恢复到新实例上,因此需要收取新实例费用,费用详情可在创建实例时查看。

说明

功能开启

恢复全量数据功能无需手动开启。新实例创建成功后会自动进行周期性备份,您可使用备份完成的数据备份和日志备份进行全量数据恢复。

操作步骤

您可以使用原实例的备份数据创建新实例进行数据恢复,该方式不会影响原实例的数据性能。

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 在左侧导航栏单击备份恢复 > 数据库恢复

    说明

    您也可以单击基本信息页面实例分布区域的数据库恢复按钮。

  3. 数据库恢复页面,选择待恢复的时间点或备份集,并对新实例进行基础资源配置。

    类别

    说明

    计费方式

    • 包年包月:属于预付费,即在新建实例时需要支付费用。适合长期需求,价格比按量付费更实惠,且购买时长越长,折扣越多。

    • 按量付费:属于后付费,即按小时扣费。适合短期需求,用完可立即释放实例,节省费用。

    • Serverless:属于动态计费,即仅需要为实际用量付费。适合业务具有间歇性定时任务,负载有波动或不可预测。请参见Serverless费用

    还原方式

    • 按备份集:恢复所选备份集内的数据。暂不支持逻辑备份。

    • 按时间点:可以选择为日志备份保留时间内,最早的一个全量备份之后的任意时间点内的数据。如需查看或修改日志备份保留时间,请参见自动备份

    说明

    只有开启了日志备份,才会显示按时间点

    产品类型

    • 源实例为基础系列时,不展示此参数。

    • 源实例为高可用系列时:

      • 如果存储类型ESSD云盘通用云盘,可以选择标准版倚天版,详情请参见产品类型

      • 如果存储类型本地盘,仅支持选择标准版

    • 源实例为集群系列时,可以选择标准版倚天版

    可用区

    可用区是地域中的一个独立物理区域,主节点可用区指主实例所在可用区,备节点可用区指备实例所在可用区。

    您可以设置实例为单可用区部署多可用区部署

    • 单可用区部署主节点可用区备节点可用区都处于相同可用区。

    • 多可用区部署(推荐):主节点可用区备节点可用区处于不同可用区,能提供可用区级别的容灾。您需要手动选择主节点可用区备节点可用区

    说明
    • 实例创建后,您可以在实例的服务可用性页面查看主备节点信息。

    • 基础系列实例只有一个节点,只能部署在一个可用区内。

    实例规格

    • 通用规格(入门级):通用型的实例规格,独享被分配的内存和I/O资源,与同一服务器上的其他通用型实例共享CPU和存储资源。

    • 独享规格(企业级):独享或独占型的实例规格。独享型指独享被分配的CPU、内存、存储和I/O资源。独占型是独享型的顶配,独占整台服务器的CPU、内存、存储和I/O资源。

    • 专属规格:完全独享虚拟主机或物理主机资源,开放主机权限,可直接在主机上按需分配多个数据库实例。更多信息,请参见添加主机

    说明

    每种规格都有对应的CPU核数、内存、最大连接数和最大IOPS。详情请参见主实例规格列表

    存储空间

    存储空间包括数据空间、系统文件空间、Binlog文件空间和事务文件空间。调整存储空间时最小单位为5 GB。

  4. 单击下一步:实例配置,配置实例网络类型和资源组,设置如下参数。

    类别

    说明

    网络类型

    • 经典网络:传统的网络类型。

    • 专有网络(推荐):也称为VPC(Virtual Private Cloud)。VPC是一种隔离的网络环境,安全性和性能均高于传统的经典网络。选择专有网络时您需要选择对应的VPC主节点交换机,如果您在上一步的基础资源中配置了多可用区部署,则还需要选择备选节点交换机

    说明

    请确保RDS实例与需要连接的ECS实例网络类型一致(如果选择专有网络,还需要保证VPC一致),否则它们无法通过内网互通。

    资源组

    资源组是在阿里云账号下进行资源分组管理的一种机制,能够帮助您解决单个云账号内的资源分组和授权管理的复杂性问题。您可以选择已有资源组或创建新资源组。如无资源分组管理需求,可选择默认资源组

  5. 单击下一步:确认订单

  6. 确认参数配置,选择购买量购买时长(仅包年包月实例),勾选服务协议,单击去支付完成支付。

    说明

    对于包年包月实例,建议勾选到期自动续费,可以免去您定期手动续费的烦恼,且不会因忘记续费而导致业务中断。

  7. (可选)后续如需登录到新实例并验证数据。关于登录实例的操作,请参见连接实例

订正在线数据

恢复到新实例后,您可使用数据传输DTS将需要的部分或全部库表数据迁移至原实例以订正原实例在线数据。

说明

创建数据迁移任务时,请将已恢复的新实例作为源库,将原实例作为目标库,接入方式均选择云实例

相关操作

常见问题

误删除了一个或多个库,如何恢复?

您可以进行库表恢复恢复一个或多个库表,详情请参见恢复库表。对于不支持库表恢复的实例,您可以参见本文,将数据全量恢复到新实例上,经过验证后,再将数据迁回原实例。

RDS MySQL支持恢复数据到某个时间点吗?

支持。如果已开启日志备份,可以恢复到日志备份保留时间内的任意时间点;如果未开启日志备份,则可以恢复至已有的数据备份所在的时间点。

没有数据备份可以按时间点恢复吗?

不可以。因为按时间点恢复是先将所选时间点前的一个全量数据备份恢复到实例,然后根据Binlog增量恢复数据到所选时间点。

如果备份保留时长只设置了7天,可以恢复到更早的数据吗?已删除的备份可以通过找回DMS的数据追踪找回吗?

不可以,因为备份都是按照您设置的保留时间进行保留的,超出保留时间后,备份都会自动删除,无法恢复;无法找回,数据追踪的本质是通过Binlog来恢复,但由于您之前的保留时长只设置了7天,因此无法追踪到7天前的Binlog。您可参考 自动备份文档修改备份保留时长。

为什么数据库恢复要收费?

由于数据是恢复到新实例上,因此需要收取新实例费用,费用详情可在创建实例时查看。

说明

恢复数据到新实例的时间预估需要多久?

恢复时间预估示例

测试环境:2核4 GB的高可用本地盘实例。

操作

预计消耗时间

创建实例

5分钟

配置实例

15分钟

下载备份数据

200 GB/小时

启动实例

5分钟

下载Binlog

200 GB/小时

应用Binlog

根据Binlog的具体内容决定

说明
  • 以此示例为例,如果您有200 GB的数据需要恢复,恢复时长为以上各操作消耗时间之和,大概在3小时左右(假如应用Binlog消耗时间为30分钟)。

  • 如需更快的恢复速度,您可以开启沙箱实例,系统会自动同步待恢复的数据至沙箱存储中,后续可进行快速恢复。具体操作请参见RDS MySQL应急恢复

影响因素

恢复数据到新实例的速度受多种因素影响,无法保证100%恢复成功,并且用户执行的SQL引发的某些异常情况需要人工排查处理。影响速度的主要因素如下:

  • 全量备份数据大小:数据量越大恢复速度越慢。

  • 增量备份数据大小:数据量越大恢复速度越慢。

  • 是否存在大事务:Binlog中存在大事务会拖慢恢复速度。

  • 是否存在热点更新:Binlog中存在热点更新会拖慢恢复速度。

  • 是否存在外键约束(FOREIGN KEY):外键约束会增加校验成本,拖慢恢复速度。

  • Binlog数量:按时间点恢复时,所需的Binlog个数越多,恢复速度越慢。

  • 实例的存储类型:云盘的恢复速度比本地盘快。

  • 实例规格:新实例的规格越大恢复速度越快。

  • 实例版本:不同的实例版本并行复制的策略不同,不支持并行复制的场景都将以单线程模式进行,影响恢复速度。

重要

除上述影响恢复速度的因素以外,还有部分因素可能导致恢复无法正常进行,例如:

  • 新实例版本小于源实例,Binlog有不能正常解析的风险。

  • 表名或列名中包含中文、特殊字符等情况,恢复时有失败的风险。

  • 若源实例中的Binlog被删除,则无法完成恢复。

  • 若在源实例中关闭了implicit_primary_key参数,则会导致无主键的表恢复失败。

为什么恢复时无法选择主节点交换机?

可能因为您在前一步(基础配置)选择的可用区内没有交换机,所以在当前步骤(网络和资源组)无法选择主节点交换机。您可以单击到控制台创建跳转到专有网络控制台,在可用区内创建交换机,就可以选择主节点交换机了。