本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
本文介绍如何通过DTS控制台的物理网关迁移上云功能将ECS、IDC或其他云服务器中的自建SQL Server数据库迁移到RDS SQL Server。该功能采用物理网关协议的接入方式,具有速度快、操作简单、稳定性好、场景覆盖全等特点,能够有效提高迁移效率。
使用场景
若您的自建SQL Server数据库所在服务器可以访问公网,您可以采用本文中的操作将自建SQL Server数据库迁移到RDS SQL Server中。
若您的自建SQL Server数据库所在服务器无法连接公网,但有一台专门的堡垒机进行网络通信时,请参考其他迁移方案,请参见自建SQL Server通过堡垒机架构的物理网关迁移上云。
前提条件
源端自建SQL Server需要满足以下条件。
源端自建数据库的版本为:SQL Server 2019、2017、2016、2014、2012、2008 R2、2005。
说明支持阿里云ECS自建数据库、IDC自建数据库、其它云服务器上的自建数据库,不支持云数据库。
源端自建数据库所在服务器需要安装DBS物理协议网关。安装方法,请参见附录:新建物理协议网关。
说明请确保物理协议网关安装地域与目标RDS实例处于同一地域。
目标端RDS SQL Server实例需满足以下条件。
目标端数据库的版本为:SQL Server 2019、2017、2016、2014、2012、2008 R2。
目标端RDS SQL Server实例版本必须大于或等于源端自建SQL Server版本。
使用阿里云账号完成如下授权。
已创建AccessKey,并获取AccessKey ID和AccessKey Secret信息,用于客户端网关的身份识别及注册上线至DBS控制台。具体操作,请参见创建AccessKey。
若用RAM账号(阿里云子账号)进行添加,需要获得AliyunDBSFullAccess权限,具体操作,请参见为RAM用户授权。
说明主账号默认在开通DBS服务时已开通以上权限。
添加成功后,当前账号下的所有用户在DBS控制台都可以看到该备份网关。
物理协议迁移上云和逻辑数据迁移上云的区别
对比项 | 物理协议迁移上云 | 逻辑数据迁移上云 |
迁移原理 | 采用数据库原生物理备份协议写入数据块到目标端。 | 采用JDBC逻辑协议获取SQL并写入到目标端。 |
操作系统要求 | 仅支持Windows上的SQL Server,且桌面Windows版本不能低于XP,服务器Windows版本不能低于2003。 | 无限制。 |
部署要求 | 需要在数据库所在服务器上安装物理协议网关。 | 无需安装网关。 |
网络连通要求 | 自建库所在服务器可以访问到阿里云服务网络。 说明 若自建库所在服务器无法连接公网,但有一台专门的堡垒机进行网络通信时,请选择其他迁移方案,请参见自建SQL Server通过堡垒机架构的物理网关迁移上云。 | 需要开放数据库端口或开通专线访问。 |
源库权限要求 | 需要sysadmin角色。 | 结构迁移和全量迁移需要SELECT权限,增量迁移需要sysadmin权限。更多详情请参见数据库账号的权限要求。 |
目标库版本要求 | 目标库版本必须大于等于源库版本号。 | 支持从高版本到低版本,或低版本到高版本。 |
目标库可访问性 | 迁移上云期间不可使用。 | 迁移上云期间允许读写。 |
源库可以迁移表的限制 | 不支持内存表,不支持FileStream、FileTables数据字段类型。 | 限制条件,请参见源库限制。 |
支持的迁移场景 | 自建数据库迁移上云。 说明 ECS、IDC或其他云服务器中的自建SQL Server数据库。 | 自建数据库迁移上云、其他云托管数据库迁移上云。 |
迁移效率 | 高。 | 中。 |
是否支持数据加工ETL | 不支持。 | 支持。 |
是否支持表级别数据过滤 | 不支持。 | 支持。 |
是否支持库级别过滤 | 支持。 | 支持。 |
迁移说明
类型 | 说明 |
源库限制 |
|
数据库版本 | 目标端SQL Server版本必须大于或等于源端SQL Server版本,版本高低关系如下:
说明 各版本支持的迁移关系,请参见支持的迁移关系。 |
内存数据库与镜像技术 | 由于SQL Server中In-Memory OLTP特性和Mirroring技术是不兼容的,如果您的源端开启了内存数据库,目标端不能为高可用版的RDS实例。 |
数据库个数 | 多库迁移时,由于RDS的数据库个数存在约束限制,不同的实例规格限制也相应不同,具体请参见数据库数量。 |
其他限制 |
|
注意事项
数据迁移上云期间允许对源端自建SQL Server数据库进行增量写入,但在上云切换过程中请勿进行写入操作,否则会导致数据不一致。
增量迁移期间,目标端RDS SQL Server数据库暂时处于不可用状态。请等待增量迁移任务完成,并且选择切换上云后再使用目标数据库。
支持的迁移关系
源端版本(Edition) | 目标RDS版本(Edition) |
企业版(Developer)/标准版/Web/Express | 企业版 |
标准版/Web/Express | 标准版 |
Web/Express | Web |
操作步骤
进入目标地域的迁移任务列表页面(二选一)。
通过DTS控制台进入
登录数据传输服务DTS控制台。
在左侧导航栏,单击数据迁移。
在页面左上角,选择迁移实例所属地域。
通过DMS控制台进入
说明实际操作可能会因DMS的模式和布局不同,而有所差异。更多信息。请参见极简模式控制台和自定义DMS界面布局与样式。
登录DMS数据管理服务。
在顶部菜单栏中,选择
。在迁移任务右侧,选择迁移实例所属地域。
单击创建任务,进入任务配置页面。
配置源库及目标库信息。
警告选择源和目标实例后,建议您仔细阅读页面上方显示的使用限制,否则可能会导致任务失败或数据不一致。
类别
配置
说明
无
任务名称
DTS会自动生成一个任务名称,建议配置具有业务意义的名称(无唯一性要求),便于后续识别。
源库信息
选择已有连接信息
您可以按实际需求,选择是否使用已有数据库实例。
如使用已有实例,下方数据库信息将自动填入,您无需重复输入。
如不使用已有实例,您需要配置下方的数据库信息。
说明您可以在数据连接管理页面或新版配置页面,将数据库录入DTS。更多信息,请参见数据连接管理。
DMS控制台的配置项为选择DMS数据库实例,您可以单击新增DMS数据库实例或在控制台首页将数据库录入DMS。更多信息,请参见云数据库录入和他云/自建数据库录入。
数据库类型
选择SQL Server。
接入方式
选择物理协议。
实例地区
默认为自建SQL Server数据库所属地域。
物理协议网关(DBS备份网关)
选择目标物理协议网关。
说明物理协议网关的安装方法,请参见附录:新建物理协议网关。
域名或IP地址
此处默认为localhost。
端口
填入自建SQL Server数据库的服务端口,默认为1433。
目标库信息
选择已有连接信息
您可以按实际需求,选择是否使用已有数据库实例。
如使用已有实例,下方数据库信息将自动填入,您无需重复输入。
如不使用已有实例,您需要配置下方的数据库信息。
说明您可以在数据连接管理页面或新版配置页面,将数据库录入DTS。更多信息,请参见数据连接管理。
DMS控制台的配置项为选择DMS数据库实例,您可以单击新增DMS数据库实例或在控制台首页将数据库录入DMS。更多信息,请参见云数据库录入和他云/自建数据库录入。
数据库类型
默认为SQL Server。
接入方式
默认为云实例。
实例地区
选择目标RDS SQL Server实例所属地域。
实例ID
选择目标RDS SQL Server实例ID。
数据库账号
填入目标RDS SQL Server实例的数据库账号。
说明RDS SQL Server数据库账号创建及授权方法,请参见创建普通账号和高权限账号和修改账号权限。
数据库密码
填入该数据库账号对应的密码。
配置完成后,在页面下方单击测试连接以进行下一步,并在弹出的DTS服务器访问授权对话框单击测试连接。
说明请确保DTS服务的IP地址段能够被自动或手动添加至源库和目标库的安全设置中,以允许DTS服务器的访问。更多信息,请参见添加DTS服务器的IP地址段。
配置任务对象。
在对象配置页面,配置待迁移的对象。
配置项
说明
任务步骤
如果只需要进行全量迁移,请选中全量迁移(默认必选)。
如果需要进行不停机迁移,请选中全量迁移和增量迁移。
说明如果未选择增量迁移,为保障数据一致性,数据迁移期间请勿在源实例中写入新的数据。
源库对象
在源库对象框中单击待迁移的对象,然后单击
将其移动到已选择对象框。
说明支持迁移单库、多库或整个实例。
已选择对象
显示目标迁移对象。
单击下一步高级配置,进行高级参数配置。
配置
说明
源库、目标库无法连接后的重试时间
在迁移任务启动后,若源库或目标库连接失败则DTS会报错,并会立即进行持续的重试连接,默认重试720分钟,您也可以在取值范围(10~1440分钟)内自定义重试时间,建议设置30分钟以上。如果DTS在设置的时间内重新连接上源、目标库,迁移任务将自动恢复。否则,迁移任务将失败。
说明针对同源或者同目标的多个DTS实例,网络重试时间以后创建任务的设置为准。
由于连接重试期间,DTS将收取任务运行费用,建议您根据业务需要自定义重试时间,或者在源和目标库实例释放后尽快释放DTS实例。
源库、目标库出现其他问题后的重试时间
在迁移任务启动后,若源库或目标库出现非连接性的其他问题(如DDL或DML执行异常),则DTS会报错并会立即进行持续的重试操作,默认持续重试时间为10分钟,您也可以在取值范围(1~1440分钟)内自定义重试时间,建议设置10分钟以上。如果DTS在设置的重试时间内相关操作执行成功,迁移任务将自动恢复。否则,迁移任务将会失败。
重要源库、目标库出现其他问题后的重试时间的值需要小于源库、目标库无法连接后的重试时间的值。
监控告警
是否设置告警,当迁移失败或延迟超过阈值后,将通知告警联系人。
不设置:不设置告警。
设置:设置告警,您还需要设置告警阈值和告警联系人。更多信息,请参见在配置任务过程中配置监控告警。
保存任务并进行预检查。
若您需要查看调用API接口配置该实例时的参数信息,请将鼠标光标移动至下一步保存任务并预检查按钮上,然后单击气泡中的预览OpenAPI参数。
若您无需查看或已完成查看API参数,请单击页面下方的下一步保存任务并预检查。
说明在迁移任务正式启动之前,会先进行预检查。只有预检查通过后,才能成功启动迁移任务。
如果预检查失败,请单击失败检查项后的查看详情,并根据提示修复后重新进行预检查。
如果预检查产生警告:
对于不可以忽略的检查项,请单击失败检查项后的查看详情,并根据提示修复后重新进行预检查。
对于可以忽略无需修复的检查项,您可以依次单击点击确认告警详情、确认屏蔽、确定、重新进行预检查,跳过告警检查项重新进行预检查。如果选择屏蔽告警检查项,可能会导致数据不一致等问题,给业务带来风险。
购买实例。
预检查通过率显示为100%时,单击下一步购买。
在购买页面,选择数据迁移实例的链路规格,详细说明请参见下表。
类别
参数
说明
信息配置
资源组配置
选择实例所属的资源组,默认为default resource group。更多信息,请参见什么是资源管理。
链路规格
DTS为您提供了不同性能的迁移规格,迁移链路规格的不同会影响迁移速率,您可以根据业务场景进行选择。更多信息,请参见数据迁移链路规格说明。
配置完成后,阅读并选中《数据传输(按量付费)服务条款》。
单击购买并启动,并在弹出的确认对话框,单击确定。
您可在数据迁移界面单击目标迁移实例,在任务管理页面,查看实例迁移进展。
说明您也可以在RDS控制台目标实例的
页面查看数据的全量或增量迁移进度。
全量迁移任务进度为100%,增量迁移任务进行时,在目标迁移任务的 页面,单击迁移上云按钮。
在弹出的您确定要切换上云吗对话框中,单击立即开始,等待迁移上云任务完成即可。
说明为了保证数据的一致性,请您在触发上云切换前,停止对源实例写入数据,并等待上云任务完成,最后进行业务连接切换,整个过程大约需要数分钟时间。
附录:新建物理协议网关
本章节介绍创建物理协议网关的方法。
前提条件
您需要向NT AUTHORITY\SYSTEM账号赋予Sysadmin角色。您可执行如下SQL命令或通过图形化界面进行设置:
SQL命令
ALTER SERVER ROLE [sysadmin] ADD MEMBER [NT AUTHORITY\SYSTEM] GO
图形化界面
注意事项
AliyunDBSAgent会将待迁移数据库的恢复模式设置成Full。
恢复模式为Full模式时,如果数据库持续写入会占用源端磁盘空间,可能造成源端磁盘满的情况。为避免此种情况发生,迁移任务完成后,您可手动将恢复模式设置为Simple,命令如下:
ALTER DATABASE 数据库名 SET RECOVERY Simple;
操作步骤
在配置源库及目标库信息页面,单击新建物理协议网关按钮。
在弹出的部署命令对话框中,选择备份网关所在地区、备份网关所在网络类型,并复制物理协议网关安装命令,手动下载。
说明公网:通过公网IP访问。
ECS私网/VPC:通过阿里云专线访问。
在本地Windows设备或服务器上,安装AliyunDBSAgent。
双击下载文件内的setup.exe应用程序。
选择安装语言,单击OK,然后单击下一步。
阅读并接受协议条款,单击下一步。
选择DBS备份网关,单击下一步。
选择安装路径,单击下一步并单击确定。
选择备份网关地域,并填写AccessKey ID和AccessKey Secret信息,单击下一步。
重要请确保物理协议网关安装的地域和目标RDS SQL Server实例所在地域是一致的。
AccessKey信息以明文方式存放在安装目录下的
.\config\dbs-agent.conf
中。
确认要安装的组件包,单击下一步。
网关将开始安装,安装时间大约为1~5分钟。
单击完成。
您可
C:\Program Files\aliyun\dbs_agent\logs\agent.log
安装目录下查看网关安装情况,如下图表示网关已正常安装。
物理协议网关安装成功后,在DTS控制台的部署命令对话框中,单击完成安装。
确认物理协议网关是否已启动。
在Windows运行窗口中,输入
services.msc
,单击确定。打开系统的服务管理器。
在服务管理器中,确认该服务是否已启动,如未启动,请右键单击AliyunDBSAgent,在弹出的列表中选择启动。
说明系统将默认启动备份网关,您也可以在服务管理器中启动、停止AliyunDBSAgent的服务。
查看新添加的物理协议网关。
您可在数据灾备的备份网关页面,单击右上角的刷新,查看新添加的物理协议网关。
说明以DTS_开头为新添加的物理协议网关。