本文介绍如何将无公网访问条件的自建SQL Server数据库迁移到RDS SQL Server中。
使用场景
若您的自建SQL Server数据库所在服务器无法连接公网,但有一台专门的堡垒机进行网络通信时,您可以采用本文操作将自建SQL Server数据库迁移到RDS SQL Server中:
在堡垒机上安装代理网关。
在自建数据库所在服务器上安装DBS备份网关。
通过DTS控制台的物理网关迁移上云功能将自建SQL Server数据库迁移到RDS SQL Server中。
若您自建SQL Server数据库所在服务器有访问公网的条件,请参考其他迁移方案,请参见自建SQL Server通过物理网关迁移上云。
前提条件
源端自建SQL Server需要满足以下条件。
源端自建数据库的版本为:SQL Server 2019、2017、2016、2014、2012、2008 R2、2005。
说明支持阿里云ECS自建数据库、IDC自建数据库、其它云服务器上的自建数据库,不支持云数据库。
源端自建数据库所在服务器请勿设置
HTTP_PROXY
和HTTPS_PROXY
环境变量。重要若设置了上述两个环境变量,系统会优先使用环境变量指定的代理网关,导致步骤一堡垒机上安装的数据库网关无法生效,从而导致网络连接失败。
目标端RDS SQL Server实例需满足以下条件。
目标端数据库的版本为:SQL Server 2019、2017、2016、2012、2008 R2。
目标端RDS SQL Server实例版本必须大于或等于源端自建SQL Server版本。
目标用户已完成如下动作:
已创建AccessKey,并获取AccessKey ID和AccessKey Secret信息,用于客户端网关的身份识别及注册上线至DBS控制台。具体操作,请参见创建AccessKey。
若用RAM账号(阿里云子账号)进行添加,需要获得AliyunDBSFullAccess权限,具体操作,请参见为RAM用户授权。
说明主账号默认在开通DBS服务时已开通以上权限。
添加成功后,当前账号下的所有用户在DBS控制台都可以看到该备份网关。
在备份SQL Server时,需要向NT AUTHORITY\SYSTEM账号授权Sysadmin角色。可执行如下SQL命令进行设置:
ALTER SERVER ROLE [sysadmin] ADD MEMBER [NT AUTHORITY\SYSTEM] GO
说明AliyunDBSAgent默认的启动账号为NT AUTHORITY\SYSTEM。
如果堡垒机操作系统为Linux,请先在自建数据库所在服务器中安装JRE(Java Runtime Environment)1.8版本的Java环境,您可访问官网下载和安装。
配置流程
步骤 | 说明 |
在堡垒机上安装代理网关。 代理网关的主要功能是在备份时接收从DBS备份网关所在的数据库主机发送过来的数据,并将数据转发至DBS云存储中(外网);同时,在进行恢复或下载数据库时,代理网关也可以接收DBS云存储发回的数据,并转发至数据库主机上。 | |
在数据库所在服务器上安装DBS备份网关,且在安装时,填写代理网关的IP地址(即堡垒机的内网IP地址)。 DBS备份网关是安装在数据库主机上的备份软件,其主要功能是在备份时连接、查询数据库,并将备份数据发送至代理网关所在的堡垒机。在进行恢复操作时,DBS备份网关通过代理网关从外部获取数据,并将数据写入数据库中。 | |
通过步骤一和步骤二打通网络后,在DTS控制台的选择接入方式为物理协议将自建SQL Server数据库迁移到RDS SQL Server。 说明 有关在DTS控制台进行迁移操作时的注意事项、迁移说明、支持的迁移关系等,请参见自建SQL Server通过物理网关迁移上云。 |
步骤一:安装代理网关(堡垒机)
本节介绍在Windows系统或Linux系统的堡垒机上安装代理网关的操作步骤。
Windows系统
进入迁移任务的列表页面。
登录DMS数据管理服务。
在顶部菜单栏中,单击集成与开发。
在左侧导航栏,选择 。
说明实际操作可能会因DMS的模式和布局不同,而有所差异。更多信息,请参见极简模式控制台和自定义DMS界面布局与样式。
您也可以登录新版DTS迁移任务列表页面。
在迁移任务右侧,选择迁移实例所属地域。
说明新版DTS迁移任务列表页面,需要在页面左上角选择迁移实例所属地域。
单击创建任务,进入配置源库及目标库信息页面。
依次选择
,单击新建物理协议网关按钮。在弹出的部署命令对话框中,选择备份网关所在地区、备份网关所在网络类型,并复制网关安装命令,手动下载。
说明公网:通过公网IP访问。
ECS私网/VPC:通过阿里云专线访问。
在Windows系统的堡垒机上进行安装。
双击下载文件内的setup.exe应用程序。
选择安装语言,单击OK。
单击下一步。
阅读并接受协议条款,单击下一步。
选择代理网关,单击下一步。
选择代理网关安装路径,单击下一步,并单击确定。
说明默认安装在
C:\Program Files(x86)\aliyun\dbs_agent
中。单击下一步,准备安装代理网关基础文件。
基础文件安装完成后,单击 。
进入Windows的任务管理器,确认代理网关是否已安装成功。
如下图所示,表示代理网关已安装成功。
Linux系统
请前往DBS控制台,获取备份网关下载链接,在Linux系统的堡垒机上进行安装。
登录DBS控制台。
单击左侧导航栏中的备份网关,然后在上方选择目标地域。
说明请就近选择数据库所在的地域进行备份网关的安装。例如您的数据库在华东1(杭州)地域,建议安装华东1(杭州)地域的备份网关。
单击页面右上角的添加备份网关。
选择备份网关所在网络类型,并复制备份网关安装命令,在数据库服务器上执行安装命令。
说明公网:通过公网IP访问DBS。
ECS私网/VPC:通过阿里云专线访问DBS。
在Linux命令行中,执行安装命令,系统会下载并自动运行安装包。示例如下:
[root@iZbp****** ~]# wget -O aliyunDBSAgentInstaller.jar https://aliyun-dbs.oss-cn-hangzhou-internal.aliyuncs.com/installer/0.0.141/aliyunDBSAgentInstaller-0.0.141.jar && sudo java -Dregion=cn-hangzhou -jar aliyunDBSAgentInstaller.jar --2023-08-25 16:04:52-- https://aliyun-dbs.oss-cn-hangzhou-internal.aliyuncs.com/installer/0.0.141/aliyunDBSAgentInstaller-0.0.141.jar Resolving aliyun-dbs.oss-cn-hangzhou-internal.aliyuncs.com (aliyun-dbs.oss-cn-hangzhou-internal.aliyuncs.com)... 100.XXX.XX.XX, 100.XXX.XX.XX, 100.XXX.XX.XX, ... Connecting to aliyun-dbs.oss-cn-hangzhou-internal.aliyuncs.com (aliyun-dbs.oss-cn-hangzhou-internal.aliyuncs.com)|100.XXX.XX.XX|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 247955671 (236M) [application/x-java-archive] Saving to: ‘aliyunDBSAgentInstaller.jar’ 100%[=======================================================================================================>] 247,955,671 19.9MB/s in 11s 2023-08-25 16:05:03 (21.4 MB/s) - ‘aliyunDBSAgentInstaller.jar’ saved [247955671/247955671]
选择安装语言。输入0表示选择中文,1表示选择英文。
Select your language 0 [x] chn 1 [ ] eng Input selection: 0
输入1,并阅读网关协议。
Press 1 to continue, 2 to quit, 3 to redisplay 1
输入1,接受网关协议。
Press 1 to accept, 2 to reject, 3 to redisplay 1
选择安装组件,Y表示安装备份网关(Agent),N表示安装代理网关(数据库网关DG)。本文以安装代理网关为例,请选择N,再输入Y确认组件信息。
Enter Y for Yes, N for No: N -- DG -- Enter Y for Yes, N for No: Y Done!
输入1,继续安装。
Press 1 to continue, 2 to quit, 3 to redisplay 1
选择安装路径,回车表示默认安装在默认路径
/usr/local/aliyun/dbs_agent
下。如需安装于自定义路径下,请手动输入目标路径,并输入1进行确认。本文以安装在自定义目录
/usr/local/aliyun/daili_dbs_agent
下为例演示。选择安装路径 : [/usr/local/aliyun/dbs_agent] /usr/local/aliyun/daili_dbs_agent Press 1 to continue, 2 to quit, 3 to redisplay 1
确认安装组件,输入1开始安装。
等待安装完成即可,安装时间大约为1~5分钟。
选择你要安装的包 : [x] Pack '代理网关基础文件' required Done! Press 1 to continue, 2 to quit, 3 to redisplay 1 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── 安装中 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── ==================== Installation started Platform: linux,version=3.10.0-1XXX.XX.X.el7.x86_64,arch=x64,symbolicName=null,javaVersion=1.8.0_372 [ Starting to unpack ] [ Processing package: 代理网关基础文件 (1/1) ] Cleaning up the target folder ... [ Unpacking finished ] Installation finished ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── 安装完成 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Installation was successful Application installed on /usr/local/aliyun/daili_dbs_agent [ Writing the uninstaller data ... ] [ Console installation done ]
执行如下命令,确认代理网关是否已安装成功。
ps aux | grep app_aliyun_proxy
如下表示进程正常,代理网关已安装成功。若出现其他无法解决的报错,请到DBS客户咨询群(钉钉群号:35585947)进行咨询。
[root@iZbp****** ~]# ps aux | grep app_aliyun_proxy root 1**** 0.0 0.5 7***** 9*** ? Ssl 16:06 0:00 /usr/local/aliyun/daili_dbs_agent/dist/app_aliyun_proxy/app_aliyun_proxy -addr :9797 -logdir /usr/local/aliyun/daili_dbs_agent/logs root 2**** 0.0 0.0 1***** 9** pts/1 S+ 16:08 0:00 grep --color=auto app_aliyun_proxy
步骤二:安装备份网关(数据库主机)
在自建SQL Server所在服务器上安装DBS备份网关,安装方法如下。
复制安装代理网关部分步骤4的网关下载链接,在自建数据库所在服务器中手动下载。
重要备份网关下载链接必须与安装代理网关部分步骤4的链接一致,否则会导致数据库主机和外部网络连接失败。
在本地Windows设备或服务器上,安装AliyunDBSAgent。
双击下载文件内的setup.exe应用程序。
选择安装语言,单击OK,然后单击下一步。
阅读并接受协议条款,单击下一步。
选择DBS备份网关,单击下一步。
选择安装路径,单击下一步并单击确定。
选择备份网关地域,并填写AccessKey ID、AccessKey Secret、代理网关地址和代理网关端口号,单击下一步。
重要请确保DBS备份网关安装的地域和目标RDS SQL Server实例所在地域是一致的。
AccessKey信息以明文方式存放在安装目录下的
.\config\dbs-agent.conf
中。代理网关地址填写步骤一中代理网关的IP地址(堡垒机的内网IP地址),代理网关端口号默认为9797。
配置完成后,系统会尝试连接步骤一堡垒机中配置好的代理网关,若连接失败,则系统会报错,请重新检查代理网关的安装情况。
确认要安装的组件包,单击下一步。
网关将开始安装,安装时间大约为1~5分钟。
单击完成。
您可
C:\Program Files\aliyun\dbs_agent\logs\agent.log
安装目录下查看网关安装情况,如下图表示网关已正常安装。
DBS备份网关安装成功后,在DTS控制台的部署命令对话框中,单击完成安装。
确认DBS备份网关是否已启动。
在Windows运行窗口中,输入
services.msc
,单击确定。打开系统的服务管理器。
在服务管理器中,确认该服务是否已启动,如未启动,请右键单击AliyunDBSAgent,在弹出的列表中选择启动。
说明系统将默认启动备份网关,您也可以在服务管理器中启动、停止AliyunDBSAgent的服务。
查看新添加的DBS备份网关。
您可在数据库备份DBS的备份网关页面,单击刷新,查看新添加的DBS备份网关。
说明以DTS_开头为新添加的DBS备份网关。
步骤三:数据库迁移上云
具体操作,请参见操作步骤部分。
配置源库信息时,物理协议网关(DBS备份网关)选择步骤二中新添加的DBS备份网关。