Oracle-dblink

Oracle-dblink

当用户要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的 dblink,通过 dblink 本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。下面讲介绍我之前项目中如何在本地数据库中创建dblink.

create database link TestDblink
 connect to dbName identified by dbPassword
  using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.2.158)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))'; 
  • TestDblink 表示 dblink 名字
  • dbName 表示远程数据库的用户
  • dbPassword 表示远程数据库的密码
  • HOST 表示远程数据库IP
  • PORT 表示远程数据库端口
  • SERVICE_NAME 远程数据库的实例名

查询、删除和插入数据和操作本地的数据库是一样的,只不过表名需要写成表名@dblink服务器而已。
例如:如果想在本地数据库中通过 dblink 访问远程数据库 'orcl' 中 dbName.tb_test 表,sql 语句如下所示。

select * from db.tb_test@TestDblink;

DBLINK 其他相关的知识:
1、查看所有的数据库链接,登录管理员查看。

select owner,object_name from dba_objects where object_type='DATABASE LINK';

2、删除数据库连接。

drop database link TestDblink;

查看 dblink。

select owner,object_name from dba_objects where object_type='DATABASE LINK';

或者

select * from dba_db_links;

删除。注意:用户有create public database link或者create database link权限。

drop public database link dblinkname;

评论

暂无

添加新评论