创建DBLINK(三)

-- Drop existing database link 
drop public database link DBLINK_NAME;
-- Create database link 
create public database link DBLINK_NAME
  connect to TL_LINK_DB
  using '(DESCRIPTION =
   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = IP地址)(PORT = 1521))
   )
   (CONNECT_DATA =
     (SERVICE_NAME = >DB服务名)
   )
)';

说明:

①.删除已经存在的database link;

②.创建database link:

TL_LINK_DB—>远程数据库名
IP地址            —>远程数据库IP地址
1521              —>连接的端口
DB服务名      —>远程数据库服务名


达梦数据库(DM)中创建数据库链接(DBLink)是一种实现跨数据库访问的方式,允许本地数据库像访问本地表一样访问远程数据库中的数据。根据不同的需求和远程数据库的类型,DBLink创建方式也有所不同。以下是达梦数据库中创建DBLink的方法和相关说明。 ### 创建本地达梦数据库之间的DBLink 在本地达梦数据库中访问另一个达梦数据库实例的数据时,可以通过DPI(Database Programming Interface)方式创建DBLink。该方式适用于达梦数据库之间的连接,并且需要确保远程数据库的监听端口可被访问。 **语法格式:** ```sql CREATE OR REPLACE LINK link_name CONNECT 'DPI' WITH user_name IDENTIFIED BY password USING 'host:port'; ``` **参数说明:** - `link_name`:DBLink的名称,用于后续访问远程表。 - `user_name`:远程数据库的用户名。 - `password`:远程数据库用户的密码,若密码中包含特殊字符,需要用双引号包裹。 - `host:port`:远程达梦数据库的IP地址和监听端口号。 **示例:** ```sql CREATE OR REPLACE LINK DM_LINK CONNECT 'DPI' WITH SYSDBA IDENTIFIED BY "Dameng123" USING '192.168.56.209:5236'; ``` 该语句创建了一个名为 `DM_LINK` 的DBLink,用于连接位于 `192.168.56.209:5236` 的达梦数据库实例,使用用户 `SYSDBA` 和密码 `"Dameng123"` 进行身份验证[^5]。 --- ### 创建达梦数据库到其他数据库的DBLink(如Oracle) 达梦数据库支持创建DBLink连接到其他类型的数据库,例如Oracle。此时需要使用对应数据库的标识符(如 `ORACLE`)以及符合目标数据库要求的连接字符串。 **语法格式:** ```sql CREATE OR REPLACE LINK link_name CONNECT 'ORACLE' WITH user_name IDENTIFIED BY password USING 'tns_string'; ``` **参数说明:** - `tns_string`:Oracle数据库的TNS连接字符串,包含主机地址、端口、服务名等信息。 **示例:** ```sql CREATE OR REPLACE LINK ORA_LINK CONNECT 'ORACLE' WITH scott IDENTIFIED BY tiger USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.0.1)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl)))'; ``` 该语句创建了一个名为 `ORA_LINK` 的DBLink,用于连接Oracle数据库,使用用户 `scott` 和密码 `tiger`,并通过指定的TNS字符串进行连接[^4]。 --- ### 使用DBLink访问远程数据 创建DBLink后,可以通过SQL语句访问远程数据库中的表。语法如下: ```sql SELECT * FROM remote_table@link_name; ``` **示例:** ```sql SELECT * FROM employees@DM_LINK; ``` 该语句将从远程达梦数据库中查询 `employees` 表的数据,前提是该表在远程数据库中存在且当前用户有访问权限。 --- ### 注意事项 - 在创建DBLink时,如果用户名或密码中包含特殊字符,必须使用英文双引号将其包裹。 - 确保网络可达性,即本地数据库服务器能够访问远程数据库的IP和端口。 - 对于达梦数据库之间的连接,推荐使用DPI方式,而与其他数据库(如Oracle)连接时则使用对应的数据库标识符。 - DBLink可以是私有(不加 `PUBLIC`)或公共(加 `PUBLIC`)的,公共DBLink可供所有用户使用。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值