更新时间:2024-10-25 gmt 08:00
rds for sql server添加链接服务器-九游平台
sql server数据库实例2创建链接服务器访问另外一个sql server数据库实例1。
- 开启两个实例的分布式事务,请参考,并且互相加入对端的host信息。线下服务器或ecs服务器请参考。
sql server数据库实例2和sql server数据库实例1已经在相同vpc内。如果ecs与rds不在相同vpc或者rds与线下实例建立分布式请通过eip进行连接,请参考为rds实例绑定eip。
- 在sql server实例1中使用rdsuser创建数据库dbtest1。
- 在sql server实例2中使用rdsuser运行如下sql创建链接服务器。
use [master] go exec master.dbo.sp_addlinkedserver @server = n'test_servername', @srvproduct=n'sqlserver', @provider=n'sqloledb', @datasrc=n'192.168.***.***,1433' exec master.dbo.sp_addlinkedsrvlogin @rmtsrvname = n'test_servername', @locallogin = null , @useself = n'false', @rmtuser = n'rdsuser', @rmtpassword = n'********' go
表1 参数说明 参数
说明
@server
链接服务器名称。
@srvproduct
数据源的产品名称。使用默认值sql server。
@provider
使用该默认值。
@datasrc
要访问的实例ip和端口。
@rmtsrvname
链接服务器名称。
@locallogin
本地服务器上的登录名。默认值null即可。
@useself
是否通过模拟本地登录名或登录名和密码连接到链接服务器。此处填false,表示通过登录名和密码连接到链接服务器。
@rmtuser
用户名(rdsuser)。
@rmtpassword
用户密码。
- 建立dblink之后,在链接服务器中就可以看到sql server实例1中建立的库。
- 使用如下sql查看是否插入成功,结果如图1所示。
begin tran set xact_abort on insert into [lyntest].[dbtest1].[dbo].[user1] ([id],[lname],[rname]) values('19','w’,'x') go commit tran
图1 插入结果
相关文档
意见反馈
文档内容是否对您有帮助?
提交成功!非常感谢您的反馈,我们会继续努力做到更好!
您可在查看反馈及问题处理状态。
系统繁忙,请稍后重试
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨