恢复SQL Server数据

如果拥有RDS SQL Server实例的备份数据,您可以将备份数据恢复到已有实例或新实例上,可用于误操作后恢复以及分析历史数据等场景。

功能介绍

您可以通过多种方式恢复RDS SQL Server实例的数据。

说明

本文适用于恢复全部数据到同地域的实例上,如需跨地域恢复数据或恢复RDS备份文件至自建数据库,请参见恢复方案概览

使用限制

  • 实例处于简单恢复模式时,由于简单恢复模式不会保留和备份日志,因此仅支持按备份集恢复数据,不再支持按时间点恢复数据。

  • 简单恢复模式下的实例,按备份集恢复数据时,不支持恢复数据到高可用系列、共享规格、企业集群版的实例中。

  • 对于通用云盘实例,如果实例开启了数据归档OSS功能,仅支持恢复备份集中存在的库(非冷存库),如果某个库转为冷存,则恢复的实例不包含冷存库。

恢复到已有实例

您可以按时间点或者备份集恢复到指定实例,包括当前实例本身。可以恢复实例的所有数据库或者部分数据库。

恢复规则

实例要求

说明

数据库版本

已有实例数据库版本必须大于等于原实例数据库版本。

实例系列

不支持高系列到低系列。系列从高到低依次为集群系列 > 高可用系列 > 基础系列。

实例规格

仅支持同规格到同规格、通用规格到独享规格、独享规格到通用规格。

操作步骤

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

  2. 在左侧导航栏单击备份恢复

  3. 单击数据库恢复

  4. 在弹出的请选择恢复方法对话框中,选择恢复到已有实例,单击确定

    说明

    本功能不适用于RDS SQL Server 2008 R2(本地SSD盘)实例。

  5. 设置如下参数,然后单击确定

    参数

    说明

    还原方式

    • 按备份集:可以恢复所选备份集内的数据。

    • 按时间点:可以设置为日志备份保留时间内的任意时间点。如需查看或修改日志备份保留时间,请参见备份SQL Server数据

    还原时间

    还原方式按时间点时可见。选择所需复制数据所在的时间点。

    备份集

    还原方式按备份集时可见。选择要恢复的备份集。

    更多备份集

    查询最近的1000个备份集。如果在备份集中未找到目标备份集,可以勾选该选项继续查找。

    目标实例名

    选择要恢复到哪个实例。系统默认显示当前阿里云账号在当前地域下的所有实例,包括本实例。

    说明
    • 快照备份仅支持恢复到已开启快照备份的实例上。

    • 支持恢复到更高版本的实例上。

    • 共享型实例的备份无法恢复到通用型或独享型实例上,通用型或独享型实例的备份也无法恢复到共享型实例上。

    • 如果显示的目标实例过多,您可以使用搜索框进行筛选。

    需恢复的数据库

    1. 选择要恢复的数据库。系统默认显示该实例中的所有数据库。

      • 如需恢复整个实例的数据,请勾选所有数据库。

      • 如需恢复指定数据库,请只勾选部分数据库。

    2. 设置恢复后的数据库名,系统默认使用原数据库名,需注意:

      • 恢复后的数据库名不能与目标实例中已有的数据库名相同,否则恢复任务将报错,您需要修改恢复后库名。同时,恢复后的数据库名与目标实例的数据库名不同时,不会覆盖之前的数据。

      • 恢复后库名只能使用小写字母、数字、下划线(_)和短横线(-)。

  6. (可选)查看恢复任务进展。

    系统将生成一个恢复任务,您可单击右上角image.png按钮,在任务列表页面筛选任务类型克隆实例的任务,查看恢复进展。

    image.png

恢复到新实例

本功能用于将实例的历史备份恢复到一个全新的实例。您可以按时间点或者备份集恢复数据。按备份集恢复时,可以恢复备份集中的所有数据库或者部分数据库。恢复到新实例所需时间,请参见本文常见问题

费用说明

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

说明
  • 恢复后如果不再需要原实例,请及时释放或退订原实例,详情请参见释放实例

  • 实例创建完成后开始计费。

操作步骤

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

  2. 在左侧导航栏单击备份恢复

  3. 单击数据库恢复

  4. 在弹出的请选择恢复方法对话框中,选择恢复到全新实例,单击确定

    说明

    本功能不适用于RDS SQL Server 2008 R2(本地SSD盘)实例。

  5. 数据库恢复页面设置以下参数。

    类别

    说明

    计费方式

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

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

    说明

    当前实例的计费方式为Serverless时,只支持恢复到计费方式为Serverless的新实例。

    还原方式

    • 按备份集:可以恢复所选备份集内的数据。

    • 按时间点:可以设置为日志备份保留时间内的任意时间点。如需查看或修改日志备份保留时间,请参见备份SQL Server数据

    数据库

    可以选择恢复全部数据库或部分数据库。选择部分时,需要手动输入数据库名称,多个数据库用半角逗号(,)隔开。

    说明

    如果实例开启了快照备份,则只支持恢复全部数据库,不支持恢复部分数据库。

    系列

    • 基础系列:单节点,计算与存储分离,性价比高,用于学习或测试。

    • 高可用系列:一个主节点和一个备节点,经典高可用架构,用于生产环境。适合80%以上的用户场景。

    • 集群系列:一个主节点和一个备节点的高可用架构,支持最多七个只读实例,横向扩展集群读能力。

    说明

    不同地域和数据库版本支持的系列不同,请以实际界面为准。关于各个系列的详细介绍,请参见产品系列概述

    主节点可用区

    选择实例主节点所在的可用区。

    部署方案

    • 多可用区部署(推荐):主节点和备节点位于同一地域的不同可用区,提供跨可用区容灾。

    • 单可用区部署:主节点和备节点位于同一可用区。

    说明
    • 同一地域不同可用区没有实质性区别。

    • ECS访问同可用区RDS的性能比访问同地域其它可用区RDS更好,但差别较小。

    • 如果实例系列选择为基础系列,则只能选择单可用区部署

    • 若目标可用区右上角提示售罄,请更换可用区。

    备节点可用区

    如果部署方案选择多可用区部署,则需要选择实例备节点所在的可用区。

    实例规格

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

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

    存储空间

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

    说明

    本地SSD盘的独享套餐等规格由于资源独享的原因,存储空间大小和实例规格绑定。详情请参见主实例规格列表

  6. 单击下一步:实例配置

  7. 设置如下参数。

    类别

    说明

    网络类型

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

    • 专有网络:也称为VPC(Virtual Private Cloud)。一个VPC是一种隔离的网络环境,安全性和性能均高于传统的经典网络。选择专有网络时您需要选择对应的VPC和主节点交换机。

    说明

    请确保RDS实例与需要连接的ECS实例位于同一个VPC或者都是经典网络,否则RDS实例和ECS实例无法通过内网互通。

    资源组

    实例所属的资源组。

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

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

    您可进入实例列表,根据创建时间找到刚刚创建的实例。实例创建需要约1~10分钟,请刷新页面查看。新实例创建完成后,您可进入新实例中查看恢复后的库表。

通过临时实例恢复到原实例

该功能仅适用于SQL Server 2008 R2(本地SSD盘)实例。恢复操作,请参见通过临时实例恢复SQL Server数据

相关操作

常见问题

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

预估时间

通常情况下,恢复数据到新实例所需的预估时间范围如下。需注意,以下备份和恢复速度均基于未压缩的数据大小。

说明

由于Web版本的实例不支持备份压缩,因此备份效率会有所影响,备份与恢复速度可能降至100 GB/小时以下。

操作

是否必须

预计消耗时间

注意事项

创建与配置新实例

必须

10~15分钟

所需时间根据恢复到新实例时所选择的产品系列和规格而定。

对实例进行全量备份

非必须

200 GB/小时

  • 由于事务日志的恢复速度远低于全量备份的数据恢复速度,为确保数据恢复的最佳效率,若36小时内实例未进行过全量备份,升级过程中实例将执行一次全量备份,从而在加快恢复速度和额外增加一次全量备份之间找到平衡点。

    建议在恢复前选择适宜时间手动执行全量备份,或选择在系统自动全量备份结束后的36小时内发起恢复任务,以减少恢复过程所需总时长。

  • 备份速度可能因地区和时间段的不同而有所变化。

  • 为了获得更准确的备份和恢复性能,请参考最近一次全量备份的数据量和备份时间。

在目标实例恢复全量备份

必须

200 GB/小时

在源实例进行增量事务日志备份

必须

200 GB/小时

进行增量日志备份前后,可能存在2分钟的额外损耗(例如备份准备、收尾、资源分配等)。

在目标实例应用增量事务日志备份

必须

200 GB/小时

应用增量日志备份前后,可能存在2分钟的额外损耗(例如备份一致性验证等)。

将数据库恢复上线

必须

正常2分钟内

  • 资源消耗:应用增量事务日志是资源密集型操作。小规格实例(例如2核4 GB)可能会因事务日志数量较多而导致恢复速度下降。

  • 数据库恢复加速选项:RDS SQL Server 2019及更高版本提供加速数据库恢复(Accelerated Database Recovery)选项,可能会减少数据库恢复上线步骤所需时间。具体请根据微软官方文档综合评估是否启用此选项。

预估示例

测试实例:实例规格为4核8 GB,数据量大小为600 GB。

  • 创建与配置新实例:预计耗时12分钟。

  • 全量备份(非必须):预计耗时3小时。(600 GB / 200 GB每小时)

  • 恢复全量备份至目标实例:预计耗时3小时。(600 GB / 200 GB每小时)

  • 在源实例进行增量事务日志备份:预计耗时5分钟。(10 GB / 200 GB每小时)+ 2分钟额外损耗 = 5分钟

  • 在目标实例应用增量事务日志备份:预计耗时5分钟。(10 GB / 200 GB每小时)+ 2分钟额外损耗 = 5分钟

  • 将数据库恢复上线:预计耗时2分钟内。

综上,在此示例中,若实例36小时内未进行过全量备份,总耗时预计为6小时24分钟左右,否则需要3小时24分钟左右。

恢复建议

  • 维护窗口规划:建议在系统负载较低的时段进行恢复操作,以最小化对业务的影响。

  • 长事务问题:恢复过程中应避免执行长时间运行的事务操作,例如创建或重建索引、数据归档等,以免延长数据库恢复上线步骤的时间。