SQL Server 的链接服务器功能,真的是企业级项目里绕不开的一环。尤其是系统一多,数据要整合,要交互,谁都得面对远程数据库。设置过程其实不复杂,关键是你得知道用哪个命令、填啥参数,逻辑想清楚了,一通配置就能跑通,查询也稳得。
链接服务器的概念挺好理解的:就像把远程数据库‘装’进本地,让你像查自己表一样查别人家的库。你只要用sp_addlinkedserver
加上远程地址,搞定。
比如你要连上192.168.18.33
的 SQL Server,用下面这段:
EXEC sp_addlinkedserver
@server = N'lnksvr',
@srvproduct = N'',
@provider = N'sqloledb',
@datasrc = N'192.168.18.33';
接下来就要加个登录信息,不然你连接不上。用sp_addlinkedsrvlogin
来搞定:
EXEC sp_addlinkedsrvlogin
@rmtsrvname = N'lnksvr',
@useself = N'false',
@locallogin = NULL,
@rmtuser = N'sa',
@rmtpassword = N'';
设置完后,直接查远程表也轻轻松松。像这样写:
SELECT * FROM [lnksvr].[db_name].[dbo].[tbname];
如果你需求更复杂,比如分布式事务,也能搞。需要启动MSDTC
服务,设置好权限,再启用 DTC 支持,配置得当后就能保证事务一致性,稳定性也高。
还有一个进阶玩法是多层链接。比如服务器 A 连 B,B 再连 C,你只要分别加好sp_addlinkedserver
和登录,链路也能打通。
,SQL Server 的链接服务器功能挺好用的,配置一次,就能在多个系统之间自由查数。你要是做集成开发,或者搞 BI 报表之类的,强烈推荐你掌握这招。