更新时间:2023-06-15 GMT+08:00

创建OBS自建桶备份迁移任务

支持的源和目标数据库

表1 支持的数据库

备份文件版本

目标数据库版本

本地及其他云Microsoft SQL Server数据库备份文件版本:

  • Microsoft SQL Server 2000
  • Microsoft SQL Server 2005
  • Microsoft SQL Server 2008
  • Microsoft SQL Server 2012
  • Microsoft SQL Server 2014
  • Microsoft SQL Server 2016
  • Microsoft SQL Server 2017

RDS for Microsoft SQL Server

  • Microsoft SQL Server 2008
  • Microsoft SQL Server 2012
  • Microsoft SQL Server 2014
  • Microsoft SQL Server 2016
  • Microsoft SQL Server 2017

前提条件

  • 已登录数据复制服务控制台。

使用须知

介绍Microsoft SQL Server数据库备份迁移使用上的限制。

表2 使用须知

类型名称

使用和操作限制

数据库权限设置

在创建备份迁移任务前,请确定操作账号具有相应的OBS服务权限和桶权限。

待还原数据库名称要求

  • 待还原数据库名不能重复,且不能为以下名称(不区分大小写):
    • msdb
    • master
    • model
    • tempdb
    • rdsadmin
    • resource
  • OBS自建桶的待还原数据库名称长度为1~256个字节,组成为中文、字母、数字、下划线、中划线。

数据库新名称要求

  • 数据库新名称不能重复,且不能为以下名称(不区分大小写):
    • msdb
    • master
    • model
    • tempdb
    • rdsadmin
    • resource
  • 数据库新名称长度为1~128个字节,组成为字母、数字、下划线、中划线。

本地备份文件限制

  • 备份文件上传OBS的后缀名必须为“.bak”,否则在OBS备份文件列表中无法选中非“.bak”后缀的文件。
  • 备份文件名称长度为:1~200个字符长度。
  • 备份文件名称组成为:字母,数字,下划线,中划线。
  • 备份文件可支持全量备份文件和日志备份文件。

数据库备份文件的来源

  • OBS自建桶:上传至OBS自建桶目录下的数据库备份文件。

操作须知

  • OBS桶所在区域必须跟实例所在区域相同。
  • 目标数据库的可用磁盘空间大小至少为待还原数据库总数据量大小的1.5倍。
  • 待还原数据库名称,必须跟备份文件中数据库名称一致(区分大小写)。
  • 不支持高版本的数据库备份文件在低版本实例数据库上进行还原(例如从2017版本->2016版本的还原)。
  • 企业版->标准版->Web版的还原存在一定失败的风险(取决于是否开启高版本的特性)。
  • 迁移过程中,实例显示处于迁移状态,当前正在迁移的目标数据库默认取消高可用状态(如果是覆盖还原),迁移完成后自动恢复高可用状态。
  • 迁移过程中正在还原的数据库请停止写入事务。
  • 当RDS实例异常引发目标数据库发生主备切换时,会导致备份迁移失败,该情况下的迁移任务不可恢复。

操作步骤

本小节主要介绍OBS自建桶场景下,通过数据复制控制台创建备份迁移任务的配置流程。

  1. 在“备份迁移管理”页面,单击“创建迁移任务”。
  2. 在“选定备份”页面输入任务名称和描述,填选备份文件信息,单击“下一步”。

    表3 任务信息

    参数

    描述

    任务名称

    任务名称在4-50位之间,必须以字母开头,不区分大小写,可以包含字母、数字、中划线或下划线,不能包含其他特殊字符。

    描述

    描述不能超过256位,且不能包含! = < > & ' " \ 特殊字符。

    表4 备份文件信息

    参数

    描述

    数据库类型

    备份文件的数据库类型,选择Microsoft SQL Server。

    备份文件来源

    选择OBS自建桶。

    桶名

    选择备份文件所在的桶名,以及该桶目录下的备份文件。

    说明:
    • Microsoft SQL Server的备份文件需要选择OBS桶目录下“.bak”格式的文件名,且可以同时选择多个备份文件。
    • 不支持将一个库分割成不同文件上传。
    • 该桶的桶名、备份文件名或者路径中不能包含中文或空格。

  3. 在“选定目标”页面,根据所选数据库类型,配置相应的数据库信息,单击“下一步”。

    表5 Microsoft SQL Server数据库信息

    参数

    描述

    目标RDS实例名称

    选择目标RDS实例。若没有合适的目标RDS数据库实例,请先创建所需的目标数据库实例,

    备份文件类型

    请根据业务需求,选择全量备份或增量备份类型。

    • 全量备份:指备份文件是完整备份类型的备份。
    • 增量备份:指备份文件是日志类型的备份。
      说明:
      • 进行增量备份恢复前,需要先执行一次全量备份恢复的操作。
      • 一次性数据库迁移,则需要停止业务,上传全量备份进行恢复。
      • 如果需要数据库迁移中业务不中断,则需要使用全量备份和多次增量日志备份的恢复来实现业务中断最小化。

    最后一次备份

    一次典型的增量备份恢复过程,一般会涉及多个增量备份文件,且需要执行多次增量备份恢复操作。每次增量备份恢复均会使目标数据库处于还原中(RESTORING)状态,此时数据库不可读写,直至最后一次增量备份恢复完成后,数据库才会变成可用状态。当选择的是最后一次增量备份文件并执行恢复后,数据库将无法再继续进行增量恢复。以下是可以选择最后一次备份的场景:

    • 一次性全量迁移,后续将不再进行增量恢复,选择“是”。
    • 增量恢复流程中,最后割接阶段的最后一个增量备份选择“是”。

    覆盖还原

    覆盖还原是指目标端数据库实例已经存在同名的数据库,备份还原中是否要覆盖已存在的数据库。您可以根据业务需求,选择是否进行覆盖还原。

    说明:

    若选择此项,目标数据库实例中与待还原数据库同名的数据库将会被覆盖,请谨慎操作。

    执行预校验

    备份迁移任务是否执行预校验,默认为

    • :为保证迁移成功,提前识别潜在问题,在恢复前对备份文件的合法性、完整性、连续性、版本兼容性等进行校验。
    • :不执行预校验,迁移速度更快,但需要用户判断备份文件的合法性、完整性、连续性、版本兼容性等问题。

    指定需要恢复的数据库

    您可以选择将全部数据库或部分数据库进行恢复,默认恢复全部数据库。

    • 全部数据库:恢复备份文件中所有的数据库,不需要填写待还原的数据库名。
    • 部分数据库:恢复备份文件中的部分数据库,需要填写待还原的数据库名。全量备份与增量备份需要保证指定恢复的数据库始终一致。

    重置数据库名

    当选择的指定恢复数据库类型为“全部数据库”时,您可以选择重置数据库名。该功能将忽略备份文件中原有的数据库名,通过DRS将其恢复为指定的新数据库名。

    使用条件:

    • 备份文件中只有一个数据库。
    • 备份文件是全量备份类型(待恢复备份类型选择:全量备份),且是一次性恢复(最后一个备份选择:是)。
    说明:

    仅支持“待恢复备份类型”为“全量备份”,且“指定需要恢复的数据库类型”为“全部数据库”时重置数据库名。

    待还原数据库名称

    当选择的指定恢复数据库类型为“部分数据库”时,需要输入待还原数据库名称。

    待还原数据库名称必须与备份文件中的数据库名称一致,区分大小写,长度为1~256个字节,可以包含中文、字母,数字、中划线和下划线,不能包含其他特殊字符。

    此处,数据复制服务还提供待还原数据库别名设置的功能,具体使用场景如下:

    • 如果您选择的是全量备份下的部分数据库恢复,那么可以在填写待还原数据库名称时,根据需求为待还原数据库进行别名设置,该别名也将存储于目标端数据库。
    • 如果是增量备份下的部分数据库恢复,则不支持待还原数据库别名设置的功能。
    说明:

    待还原数据库支持重命名,最大配额为100个。

  4. 在“信息确认”页面核对配置详情后,勾选协议,单击“下一步”。

    SQL Server自身的工作原理是备份文件恢复到新的数据库后,非聚集索引表的索引信息将会失效需要立即重建。如果源数据库里存在大量非聚集索引表,备份迁移后请在目标库进行索引重建,以避免数据库未来使用中性能出现重大下降。同时备份文件里仅保存数据库级信息,在SQL Server实例中还有一些配置需要主动识别并手工完成迁移,如login,权限,DBlink,job等,如果源数据库包含这部分配置,请参考手动配置信息进行迁移补充工作。

  5. “备份迁移管理”页面任务列表中,观察对应的恢复任务的状态为“恢复中”,恢复成功后,任务状态显示“成功”