我正在尝试使用链接服务器连接 2 个数据库(不在同一服务器或域上)。下面是我正在运行以连接 2 的查询。
我的问题是,如果我指定@rmtuser = 'sa',我就可以正常连接。但是,如果我将 @rmtuser 切换为“RemoteIntegrationUser”,我会收到一条错误消息,提示无法连接。(错误 18456)
我已经验证我可以使用“RemoteIntegrationUser”帐户通过 SSMS 直接连接到“远程”服务器,并且连接得很好。
为了能够处理这些传入连接,“远程”服务器上是否必须有一些特殊权限“远程集成用户”?
Exec sp_dropserver 'RemoteDB', 'droplogins'
go
EXEC master.dbo.sp_addlinkedserver
@server = N'RemoteDB'
,@srvproduct = 'OLE DB Provider for SQL'
,@provider = N'SQLNCLI'
,@datasrc = '111.2222.33.44'
,@catalog = 'myremotedb'
EXEC master.dbo.sp_addlinkedsrvlogin
@rmtsrvname = N'RemoteDB'
,@useself = false
,@locallogin = 'LocalIntegrationUser'
,@rmtuser = N'RemoteIntegrationUser'
,@rmtpassword = N'************'
go