DBLink 的作用是在局域网内,通过一台服务器上面的数据库访问另外一台服务器上面数据库的功能。
下面简单的介绍DBLink的配置:
服务器A:IP 10.10.10.107, 数据库实例名:orcl 数据库登录:test/test
服务器B:IP 10.10.10.22, 数据库实例名:kobra 数据库登录:user/user
需求: 在A服务器上的数据库可以访问服务器B的数据库。
select owner,object_name,object_type from dba_objects where object_type='DATABASE LINK'; --查询已经配置的DBLink连接。
SELECT * FROM GLOBAL_NAME; --查询数据库实例名。
select * from v$option; select * from v$option where PARAMETER='Advanced replication';--查询数据库权限
DROP DATABASE LINK KOBRA; --删除连接;
第一步:查询权限,分配权限
select * from user_sys_privs t where t.privilege like upper('%link%');
grant dba,conn,create database link,create public database link to test;
第二步:创建连接
create public database link kobra connect to user identified by user using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =10.10.10.22)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = kobra)
)
)';
注 :kobra 为访问数据的实例名 user/user 为用户名和密码 特别提醒:using 后面的可以配置到tnaname.ora这个文件中,但是会报这个错误:ORA-12154: TNS:could not resolve service name的解决办法 经过网上查看 说需要直接在创建连接的时候配置进去方可。
第三步:验证
select * from dual@KOBRA;
输入这个之后会有返回值,表明已经连接上了。
第四步:查询
select * from temptable@KOBRA;
能查询到数据即证明连接成功。