SQL Server 远程连接服务器详细配置(sp_addlinkedserver)

远程链接服务器详细配置

--建立连接服务器 EXEC sp_addlinkedserver '远程服务器IP','SQL Server' --标注存储 EXEC sp_addlinkedserver @server = 'server', --链接服务器的本地名称。也允许使用实例名称,例如MYSERVER\SQL1 @srvproduct = 'product_name' --OLE DB数据源的产品名。对于SQL Server实例来说,product_name是'SQL Server' , @provider = 'provider_name' --这是OLE DB访问接口的唯一可编程标识。当没有指定它时,访问接口名称是 SQL Server数据源。SQL Server显式的provider_name是 SQLNCLI(Microsoft SQL Native Client OLE DB Provider)。Oracler的是 MSDAORA,Oracle 8或更高版本的是OraOLEDB.Oracle。MS Access和MS Excel的是 Microsoft.Jet.OLEDB.4.0。IBM DB2的是DB2OLEDB,以及ODBC数据源的是MSDASQL , @datasrc = 'data_source' --这是特定OLE DB访问接口解释的数据源。对于SQL Server,这是 SQL Server(servername或servername\instancename)的网络名称。对于Oracle,这是SQL*Net别名。对于 MS Access和MSExcel,这是文件的完整路径和名称。对于ODBC数据源,这是系统DSN名称 , @location = 'location' --由特定OLE DB访问接口解释的位置 , @provstr = 'provider_string' --OLE DB 访问接口特定的连接字符串。对于ODBC连接,这是ODBC连接字符串。对于MS Excel,这是Excel 5.0 , @catalog = 'catalog' --catalog的定义变化基于OLE DB访问接口的实现。对于SQL Server,这是可选的数据库名称,对于DB2,这个目录是数据库的名称 --创建链接服务器上远程登录之间的映射 EXEC sp_addlinkedsrvlogin '远程服务器IP','false','sa','架构名','访问密码' --标注存储 EXEC sp_addlinkedsrvlogin @rmtsrvname = '远程服务器IP', --要添加登录名映射的本地链接服务器 @useself = false, --当使用true值时,使用本地SQL或Windows登录名连接到远程服务器名。如果设为false,存储过程 sp_addlinkedsrvlogin的locallogin、rmtuser和rmtpassword参数将应用到新的映射中 @locallogin = NULL, --这是映射到远程登录名的SQL Server登录或Windows用户的名称。如果这个参数置为NULL,映射将应用SQL Server实例中的所有本地登录名 @rmtuser = '架构名', --用来连接到链接服务器的用户/登录名的名称 @rmtpassword = '访问密码' --用来连接到链接服务器的用户/登录名的密码 --查询数据 select top 10 * from [222].pwms.pwms.bas_tb_sku --查看链接服务器信息 select name,product,provider,data_source,query_timeout,lazy_schema_validation,is_remote_login_enabled,is_rpc_out_enabled from sys.servers where is_linked=1 --配置链接服务器属性 exec sp_serveroption '别名','name','远程服务器IP' --标注存储 EXEC sp_serveroption @server = 'server' --配置属性的链接服务器的名称 ,@optname = 'option_name' --要配置的选项 ,@optvalue = 'option_value' --选项的新值 --附参数 参 数 描 述 collation compatible 如果你确认SQL Server实例与远程SQL Server拥有相同的排序规则就启用这个设置。由于SQL Server不再需要对数据源之间的字符列执行比较操作,把它们假定为相同的排序规则,这样做可以提升性能 collation name 如果启用了use remote collation并且是非SQL Server的数据源,则collation name指定远程服务器排序规则的名称。这个排序规则名称必须是SQL Server所支持的 connect timeout 指定在超时发生之前到链接服务器的连接会尝试多少秒。如果数值为“0”,sp_ configure的remote query timeout的服务器值用来当作默认值 data access 如果启用,就允许分布式查询访问 lazy schema validation 如果设为true,则架构不会在查询开始时去检测远程表。尽管这样会减少远程查询的负载,但是如果架构发生了变化并且你没有进行架构检测,比如说查询中引用的对象不能与查询命令进行通信,就会生成错误 query timeout 指定查询等待的超时值(秒数)。如果这个值为0,则query wait选项使用sp_configure值 rpc 启用从服务器进行远程过程调用 rpc out 启用远程过程调用到服务器 use remote collation 指定是使用远程服务器排序规则(true)还是本地服务器排序规则(false) --删除链接服务器属性 exec sp_dropserver '4' --标注存储 EXEC sp_dropserver @server = 'server' --从SQL Server实例中删除的链接服务器的名称 ,@droplogins = 'droplogins' --如果指定droplogins,则在删除链接服务器之前要删除登录名映射 --查看链接登录名 select s.name linkedServerName,s.data_source linkedserver_source,s.is_linked,s.modify_date, ll.remote_name,ll.local_principal_id,ll.uses_self_credential, p.name localLoginName from sys.Linked_logins ll inner join sys.servers s on s.server_id=ll.server_id left join sys.server_principals p on p.principal_id=ll.local_principal_id where s.is_linked = 1 --删除链接服务器登录名映射 exec sp_droplinkedsrvlogin '远程服务器IP',NULL --标注存储 EXEC sp_droplinkedsrvlogin @rmtsrvname = '远程服务器IP' --登录名映射的链接服务器名称 @locallogin = NULL --这是从链接服务器删除的SQL Server登录或Windows用户映射的名称

sql

--简单点为远程机器设置远程链接服务器。 --假设远程机器IP为127.0.0.1 --建立连接服务器 EXEC sp_addlinkedserver '127.0.0.1','SQL Server' --创建链接服务器上远程登录之间的映射 EXEC sp_addlinkedsrvlogin '10.0.0.222','false','sa','架构名','密码' --查询数据 select top 10 * from [127.0.0.1].数据库名.架构名.表名 --查看链接服务器信息 select name,product,provider,data_source,query_timeout,lazy_schema_validation,is_remote_login_enabled,is_rpc_out_enabled from sys.servers where is_linked=1 --配置链接服务器属性设置别名 exec sp_serveroption 'remotecmp','name','127.0.0.1' --查询数据 select top 10 * from remotecmp.数据库名.架构名.表名

上面的文章是通过sql自带的存储过程实现的,其他的可以参考脚本之家其他的文章。

时间: 2024-08-31 03:26:31

SQL Server 远程连接服务器详细配置(sp_addlinkedserver)的相关文章

SQL Server 远程链接服务器详细配置

原文:SQL Server 远程链接服务器详细配置[转载] http://hi.baidu.com/luxi0194/blog/item/a5c2a9128a705cc6c2fd7803.html 远程链接服务器详细配置--建立连接服务器EXEC sp_addlinkedserver  '远程服务器IP','SQL Server'--标注存储EXEC sp_addlinkedserver@server = 'server', --链接服务器的本地名称.也允许使用实例名称,例如MYSERVER\S

SQL Server远程连接出错的解决方法

SQL Server远程连接出错?不要紧,下面就为您分析SQL Server远程连接出错的原因,并给出解决问题的方法,希望对您学习SQL Server远程连接方面能有所帮助. 在进行sqlserver复制的时候,我的情况是这样的,我在本地的management studio里连接了一个远程的sqlserver数据库服务器,用的不是默认端口号,也没有开browser服务,而且是命名实例,非默认实例,所以连接的服务器名得用abcabcserver,port这样的模式来连,然后配置它的复制分发(包括新

SQL Server远程连接

      昨天远程连接我服务器的SQLServer数据库,总是失败,设置方法网上有很多,我就不重复了.说一下我的失败原因吧. 报错信息: [SQL Server Native Client 10.0]命名管道提供程序: 无法打开与 SQL Server 的连接 [5 3]. [SQL Server Native Client 10.0]登录超时已过期 [SQL Server Native Client 10.0]与 SQL Server 建立连接时,发生了与网络相关的或特定于实例的错误.找不到

SQL Server 远程连接出错~~~无法访问服务器

异常处理汇总 ~ 修正果带着你的Net飞奔吧!http://www.cnblogs.com/dunitian/p/4599258.html 代理开一下 tcp/ip协议开一下 收工

sql server里连接远程服务器,并进行创建和删除新数据库

sql server里连接远程服务器,并进行创建和删除新数据库教程 一.创建新库 /* 测试 在sql2005中通过查询分析器,连接到sql2000,并创建了 tmpdb 库:成功 p_CreateDB 'tmpdb1','data','sa','sa' */ -----------------------创建存储过程开始-------------------- if object_id('p_CreateDB') is not null drop procedure p_CreateDB go

在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)

error|server|程序 错误:"在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败. (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) ",       上述错误我遇到两种情况,一种是在打开打开SQL Server 2005时弹出的,另一种是在应用程序连接SQL Server 2005时出现的.归纳了一下,由以下几个原因: 1.数据库引擎没有启动.  

配置HTTP访问SQL Server 2005 Analysis服务器

server|访问|服务器 配置通过HTTP访问SQL Server 2005 Analysis服务器 其HTTP访问机制和SQL2000 Analysis 的一样,通过在IIS中增加应用程序映射(ISAPI扩展)来实现对Analysis服务器的访问 具体步骤如下: 我的机器环境WIN2003+IIS SQL Server 2005 BETA3 1.确定msmdpump.dll文件所在SQLSERVER2005目录的位置,当前它处于下面目录中 C:\Program Files\Microsoft

SQL Server的链接服务器(MySQL、Oracle、Ms_sql、Access、SYBASE)

原文:SQL Server的链接服务器(MySQL.Oracle.Ms_sql.Access.SYBASE) 一.使用 Microsoft OLE DB Provider For ODBC 链接MySQL 安装MySQL的ODBC驱动MyODBC 1.为MySQL建立一个ODBC系统数据源,例如:选择数据库为test ,数据源名称为myDSN 2.建立链接数据库 EXEC sp_addlinkedserver @server = 'MySQLTest', @srvproduct='MySQL',

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误

错误信息: 标题: 连接到服务器 ------------------------------ 无法连接到 (local). ------------------------------ 其他信息: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) (Microsof