在与SQL SERVER 打交道的过程中,遇到这种情况:
服务器S1和服务器S2都有SQL SERVER。服务器S1能远程登录而服务器S2不能远程登录,服务器S1和服务器S2的数据库账户信息也有,但是我又想查询服务器B的数据库中的数据。是否有办法呢?
答案是有的,就是使用“链接服务器”。
可采用如下方法:
在服务器S1打开SQL Server Management Studio。新建查询:敲下以下语句
EXEC sp_addlinkedserver '链接服务器名称','','SQLOLEDB','链接服务器名称IP'
EXEC sp_addlinkedsrvlogin '链接服务器名称',false,null,'链接服务器名称账户','链接服务器密码'
添加链接服务器
“链接服务器名称”是自定义的,自己命名;
“链接服务器名称IP”是服务器S2的IP地址;
“链接服务器名称账户”是服务器S2上的数据库账户;
“链接服务器密码”是服务器S2上的数据库密码。
填写完成后,直接执行。
完成后,就可以获取服务器S2上的数据库数据了。
例如查询服务器B上的数据库DBTest的表Tab1,可以这样写:
SELECT * FROM [链接服务器名称].[DBTest].dbo.[Tab1]。
链接服务器就很好的解决了遇到的问题。