sp_addlinkedserver 多数据库操作 link 的创建,删除,查看


USE master

GO

--To use named parameters: 

EXEC sp_addlinkedserver @server = 'AA\BB', @provider = 'MSDASQL',     @provstr = 'DRIVER={SQL Server};SERVER=AA\BB;UID=sa;PWD=;'

GO 

-- OR to use no named parameters

 

USE master 

GO 

EXEC sp_addlinkedserver 'AA\BB', '', 'MSDASQL', NULL, NULL, 'DRIVER={SQL Server};SERVER=MyServer;UID=sa;PWD=;'

GO 

 

--- sp_dropserver    删除创建的 link

exec sp_dropserver ''AA\BB' '

 

--查看创建的 link

exec sp_helpserver

 

--查看

select * from [AA\BB].[数据库名].dbo.[表名]

 

 

 

 

 

### 如何在数据库中配置和创建链接服务器 #### 配置和创建链接服务器的过程概述 在数据库环境中,链接服务器是一种允许访问远程数据的技术。它通常用于跨不同数据库管理系统(DBMS)之间共享数据。以下是关于如何在常见数据库系统中配置和创建链接服务器的详细介绍。 --- #### 在 SQL Server 中创建链接服务器 SQL Server 提供了一个强大的功能来创建链接服务器,以便能够查询其他 DBMS 的数据。具体操作如下: 1. **启用高级选项** 使用 `sp_configure` 启用高级选项并重新启动服务。 ```sql EXEC sp_configure 'show advanced options', 1; RECONFIGURE; ``` 2. **启用 Ad Hoc Distributed Queries** 这一步是为了支持分布式查询。 ```sql EXEC sp_configure 'Ad Hoc Distributed Queries', 1; RECONFIGURE; ``` 3. **创建链接服务器** 使用 `sp_addlinkedserver` 和 `sp_addlinkedsrvlogin` 来定义链接服务器及其登录信息。 ```sql -- 创建链接服务器 EXEC sp_addlinkedserver @server='LinkedServerName', @srvproduct='', @provider='SQLNCLI', -- 或者 OLE DB 提供程序名称 @datasrc='RemoteDataSource'; -- 数据源名称 -- 添加登录映射 EXEC sp_addlinkedsrvlogin @rmtsrvname='LinkedServerName', @useself=FALSE, @locallogin=NULL, @rmtuser='RemoteUser', @rmtpassword='RemotePassword'; ``` 4. **测试链接服务器** 可以通过简单的查询验证链接服务器是否成功建立。 ```sql SELECT * FROM LinkedServerName.DatabaseName.SchemaName.TableName; ``` 以上过程适用于 SQL Server 环境中的链接服务器创建[^1]。 --- #### 在 Oracle 数据库中创建数据库链 Oracle 数据库提供了另一种机制——数据库链(Database Link),用于实现类似的跨数据库通信功能。 1. **安装必要的驱动程序** 如果目标数据库是非 Oracle 类型,则需要确保已安装相应的 JDBC/ODBC 驱动程序,并将其路径添加到环境变量中[^3]。 2. **创建公共或私有数据库链** 使用 `CREATE DATABASE LINK` 命令创建一个指向远程数据库的连接。 ```sql CREATE PUBLIC DATABASE LINK RemoteLinkName CONNECT TO 'RemoteUsername' IDENTIFIED BY 'RemotePassword' USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=RemoteHost)(PORT=PortNumber))(CONNECT_DATA=(SERVICE_NAME=ServiceName)))'; ``` 3. **执行跨数据库查询** 利用数据库链进行查询时,在表名后附加 `@LinkName` 即可。 ```sql SELECT * FROM TableName@RemoteLinkName; ``` 此方法特别适合于两个 Oracle 实例之间的交互。 --- #### 在 GaussDB(DWS) 中设置 MRS 数据源连接 对于基于云的服务平台如华为 GaussDB(DWS),可以通过其管理控制台完成对外部系统的集成工作。例如,当涉及到 Hive 表或其他大数据存储组件时,可通过以下方式构建关联关系: 1. 登录至 GaussDB(DWS) 控制面板; 2. 导航至“外部数据源”部分新建一条记录; 3. 输入必要参数包括但不限于主机地址、端口号以及认证凭证等细节信息; 4. 成功提交之后即可自动生成对应的外部服务器对象供后续 DDL/DML 操作调用[^2]。 --- #### 总结 不同的数据库产品有着各自独特的解决方案去达成相似的目标—即设立所谓的‘链接’或者‘桥接’性质的对象从而促进异构间的数据交换活动开展起来更加便捷高效。无论是传统的关系型数据库还是新兴的大规模分析处理引擎都在不断优化这类特性以满足日益增长的企业需求场景下的复杂挑战。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值