链接服务器

使用sql-server进行分布式查询(链接服务器)

可以使用sql-server企业管理器进行建立,注意其中的rpc及rpc out两项,也可以使用sql语句来完成定义,主要涉及到三个存储过程
sp_addlinkedserver,sp_serveroption和sp_addlinkedsrvlogin,以下是三个存储过程的语法:

sp_addlinkedserver
创建一个链接的服务器,使其允许对分布式的、针对 OLE DB 数据源的异类查询进行访问。在使用 sp_addlinkedserver 创建链接的服务器之后,此服务器就可以执行分布式查询。如果链接服务器定义为 Microsoft? SQL Server?,则可执行远程存储过程。
语法
sp_addlinkedserver [ @server = ] 'server'
[ , [ @srvproduct = ] 'product_name' ]
[ , [ @provider = ] 'provider_name' ]
[ , [ @datasrc = ] 'data_source' ]
[ , [ @location = ] 'location' ]
[ , [ @provstr = ] 'provider_string' ]
[ , [ @catalog = ] 'catalog' ]
例如:

sp_addlinkedserver 'ServerName','','SQLOLEDB','dbconn',null,'driver={sql server};server=192.168.1.181;uid=sa,pwd=;'
此处ServerName为自定义名称,dbconn为定义的odbc数据源


一般使用的参数如下:
@server “LINKED SERVER”
@srvproduct “Product name”
@provider “Provider”
@datasrc “Data source”
二、设置服务器选项
使用 sp_serveroption 过程,所要使用的参数如下:
@server “Linked server”
@optname “RPC”或“RPC OUT”
@optvalue True 或 False
三、添加Login
使用 sp_addlinkedsrvlogin 过程,所要使用的参数如下:
@rmtsrvname “Linked server”
@useself True 或 False
@locallogin 本地LOGIN
@rmtuser 远程用户
@rmtpassword 远程用户口令


全部完整的示例如下:

exec sp_helpserver /*---查看远程服务器的列表-------*/

exec sp_helplinkedsrvlogin /*------查看远程服务器的登录用户---------*/

exec sp_droplinkedsrvlogin 'jackxing',null /*----删除远程服务器的登录用户-----*/


exec sp_dropserver 'jackxing','droplogins'/*-----删除远程服务器------*/

exec sp_addlinkedserver 'jackxing','','SQLOLEDB','jackxing',null,'driver={sql server};server=192.168.2.218;uid=sa,pwd=12345;'
exec sp_serveroption N'jackxing', N'rpc out', N'true'
exec sp_serveroption N'jackxing', N'rpc', N'true'
exec sp_addlinkedsrvlogin 'jackxing','false','sa','sa','12345'
select * from jackxing.lenovo.dbo.base_station

如果为IP 则 select  [192.168.2.218] from jackxing.lenovo.dbo.base_station

转载于:https://www.cnblogs.com/tonyman/archive/2006/09/19/508816.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值