RDS SQL Server 2012和2016双机高可用版开放了Linked Server功能,不仅可以在RDS之间建立Linked Server,在网络连通的前提下,也支持和云下自建SQL Server建立Linked Server。本文介绍如何利用VPN在RDS SQL Server上建立Linked Server连接到云下自建SQL Server。
前提条件
- RDS SQL Server为以下版本:
- 2012 标准双机高可用版(独享型或通用型实例)
- 2016 标准双机高可用版(独享型或通用型实例)
- 2012 企业双机高可用版(独享型或通用型实例)
- 2016 企业双机高可用版(独享型或通用型实例)
- RDS SQL Server实例状态为运行中。
- 在部署VPN网关前,需要做好网络规划:
- 本地移动设备和云上专有网络VPC内需要访问的私网IP地址段不能相同,否则无法通信。
- 客户端必须能访问Internet。
操作步骤
利用VPN打通RDS SQL Server所在VPC和云下机器的网络连接通道
- 创建VPN网关。
- 登录VPC管理控制台。
- 在左侧导航栏,选择VPN > VPN网关。
- 在VPN网关页面,单击创建VPN网关。
- 在购买页面,根据下表配置VPN网关,并完成支付。
项目 说明 实例名称 VPN网络的名称。 说明- 2~128个字符长度。
- 以大小写字母或中文开头。
- 可包含数字、英文句号(.)、下划线(_)或连字符(-)。
地域和可用区 选择VPN网关所在的地域。本操作中选择华东1(杭州)。 说明 请确保VPC的地域和VPN网关的地域相同。网关类型 VPN网关的类型。默认为普通型。 VPC 选择要连接的VPC。 指定交换机 选择是否指定VPN网关所属的交换机。 - 否:不指定VPN网关所属的交换机,VPN网关创建在VPC内的任意一个交换机下。
- 是:指定VPN网关所属的交换机,VPN网关会创建在指定的交换机下。
带宽规格 选择VPN网关的带宽规格。 带宽规格是VPN网关所能使用的公网带宽,单位:Mbps。
IPsec-VPN 选择是否开启IPsec-VPN功能。 IPsec-VPN功能适用于站点到站点的连接,可以根据您的实际需要选择开启。
SSL-VPN 选择是否开启SSL-VPN功能。 本操作选择开启。
SSL连接数 选择您需要同时连接的客户端最大规格。 计费周期 选择购买时长。 您可以选择是否自动续费:
- 按月购买:自动续费周期为1个月。
- 按年购买:自动续费周期为1年。
说明 正常情况下,创建VPN网关需要1~5分钟。
创建完成后,VPN网关的状态会变成正常,表示VPN网关已完成初始化,可以正常使用。 - 创建SSL服务端。
- 登录VPC管理控制台。
- 在左侧导航栏,选择VPN > SSL服务端。
- 单击创建SSL服务端。根据下表配置SSL服务端,并单击确定。
- 创建客户端证书。
- 配置客户端。
- 下载并安装OpenVPN客户端。
- 解压步骤3中下载的证书,并复制到OpenVPN安装目录的config文件夹中。
- 单击Connect发起连接。
- 测试连接。
在RDS SQL Server上创建Linked Server
- 下载并安装SQL Server Management Studio。
- 通过SQL Server Management Studio(SSMS)执行如下命令。
DECLARE @linked_server_name sysname = N'myTestLinkedServer', @data_source sysname = N'10.10.0.10,1433', --style: 10.1.10.1,1433 @user_name sysname = N'ay15' , @password nvarchar(128) = N'***', @source_user_name sysname = N'test', @source_password nvarchar(128) = N'***', @link_server_options xml = N' <rds_linked_server> <config option="data access">true</config> <config option="rpc">true</config> <config option="rpc out">true</config> </rds_linked_server> ' EXEC sp_rds_add_linked_server_for_local @linked_server_name, @data_source, @user_name, @password, @source_user_name, @source_password, @link_server_options
参数说明
参数 说明 @linked_server_name Linked Server的名称。 @data_source 自建SQL Server数据库的IP和端口号,格式为: <IP>,<端口>
。@user_name 自建SQL Server数据库的用户名。 @password 自建SQL Server数据库用户名对应的密码。 @source_user_name 当前RDS SQL Server数据库的用户名。 @source_password 当前RDS SQL Server数据库用户名对应的密码。 @link_server_options 连接服务器的其他可选项。 - 执行如下命令测试Linked Server:
select * from [myTestLinkedServer].master.sys.servers
在文档使用中是否遇到以下问题
更多建议
匿名提交