本文介绍如何通过备份集实现SQL Server的全量备份数据迁移到专属集群MyBase

前提条件

  • 自建SQL Server数据库为如下版本:
    • SQL Server 2017企业版。
    • SQL Server 2012标准版、2012企业版、2014标准版、2016标准版、2016企业版、2017标准版、2019标准版。
    • SQL Server 2012企业基础版、2012Web版、2016Web版。
  • 专属集群MyBase具有足够的存储空间。若空间不足,请提前升级集群空间,详情请参见变更实例配置
  • 完成OSS Bucket的创建,并确保OSS Bucket与专属集群MyBase SQL Server实例在处于相同地域。创建OSS Bucket的方法,请参见创建存储空间

注意事项

您仅可迁移1个数据库,若您需一次性迁移多个或所有数据库,建议采用实例级的上云方案,详情请参见SQL Server实例级别迁移上云

步骤一:全量备份本地数据库

准备工作:

  • 请确保已停止写入数据。备份过程中写入的数据将不会被备份。
  • 支持全量备份文件上云,不支持差异备份文件或日志备份文件,关于差异备份文件,详情请参见差异备份文件。备份本地数据库时,请确认备份文件后缀名为bak。
    说明
    • bak:表示全量备份文件。
    • diff:表示差异备份文件。
    • trn或log:表示事务日志备份文件。
  • 全量备份文件名不能包含/*&$%@等特殊字符,否则会导致上云失败。
  1. 下载备份脚本
  2. 用SSMS(SQL Server Management Studio)开发备份脚本,并设置如下参数:
    • backup_databases_list:设置需要备份的数据库。若有多个数据库,则以英文分号或逗号分隔。
    • backup_type:设置备份类型。FULL:全量备份;DIFF:差异备份;LOG:日志备份。
    • is_run:设置执行备份的动作。1:执行备份。0:只做检查,不执行备份。
  3. 执行备份脚本。

步骤二:上传备份文件至OSS

准备工作:
  • 您需要授予数据库服务账号访问OSS的权限,详情请参见创建数据库和账号(SQL Server 2012、 2016、2017和2019)。权限设置后,系统会在访问控制RAM的角色管理中创建名为AliyunRDSImportRole的角色。
  • 请勿修改或删除AliyunRDSImportRole角色,否则会导致上云任务无法下载备份文件而失败。修改或删除该角色后,您需要重新进行访问OSS授权。
您可通过如下三种方式,将全量备份文件上传到OSS:
  • 方式一(推荐):使用ossbrowser工具上传。
    1. 下载安装并登录ossbrowser。
    2. 创建并管理Bucket和目录。
    3. 上传文件至指定Bucket或目录。
      说明 关于上传文件至指定Bucket或目录,详情请参见通过ossbrowser工具上传备份文件
  • 方式二:使用OSS控制台上传。

    当备份文件小于5GB时,您可直接使用OSS控制台上传备份文件,详情请参见OSS上传文件

  • 方式三:使用OSS API上传。

    通过OSS OpenAPI,您可实现备份文件的分片上传和断点续传,详情请参见通过OSS OpenAPI上传备份文件

说明 在OSS备份数据恢复上云任务没有完成之前,请不要删除OSS上的备份文件,否则会导致上云任务失败。

步骤三:迁移上云

  1. 登录云数据库专属集群控制台
  2. 在页面左上角,选择目标地域。
  3. 在目标专属集群的操作列单击详情
  4. 在左侧单击实例列表,然后单击目标实例ID。
  5. 在实例配置页,单击左侧导航栏备份恢复,然后单击OSS备份数据恢复上云
    s
  6. 在弹出的数据导入向导对话框中,单击两次下一步,设置以下参数。
    a
    参数说明
    数据库名目标数据库名称。
    OSS Bucket选择备份文件所在的OSS Bucket。
    OSS 子文件夹名填写备份文件所在的子文件夹名称。
    OSS 文件列表搜索并选择需要上云的备份文件。您可输入备份文件名称前缀,单击搜索按钮进行模糊查找。
    上云方案选择打开数据库(只有一个全量备份文件)
    说明
    • 打开数据库(只有一个全量备份文件):适用于全量上云,仅有一个完全备份文件上云的场景。请设置CreateMigrateTask中的如下参数:
      • BackupMode = FULL
      • IsOnlineDB = True
    • 不打开数据库(还有差异备份或日志文件):适用于增量上云,有完全备份文件加上日志备份(或者差异备份文件)上云的场景。请设置CreateMigrateTask中的如下参数:
      • BackupMode = UPDF
      • IsOnlineDB = False
    一致性检查方式
    • 同步对业务的正常运行至关重要,建议打开同步执行 DBCC。在打开数据库的同时,系统执行DBCC CheckDB操作。开启同步执行DBCC会延长打开数据库的时间;数据库越大,DBCC CheckDB越耗时。请设置CreateMigrateTask中的参数:CheckDBMode = SyncExecuteDBCheck
    • 若您对业务停机时间非常敏感,且同步对业务运行没有影响,建议打开异步执行 DBCC。在打开数据库的同时,系统不执行DBCC CheckDB操作。待打开数据库任务结束之后,再执行DBCC CheckDB操作。开启异步执行DBCC可节约打开数据库操作的时间,减少业务停机时间。请设置CreateMigrateTask中的参数:CheckDBMode = AsyncExecuteDBCheck
  7. 单击确定

后续步骤

  1. 单击刷新查看数据上云任务的最新状态。
  2. 备份恢复备份数据上云记录查看备份上云记录,默认展示最近一周的记录。