Dblink语法:
create database link dblink名称
connect to 被访问用户名 identified by 被访问用户的密码
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 主机ip)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = 实例名)
)
)';
使用场景:
假设现在有两个数据库,分别对应A和B两个用户,现在需要通过A用户去访问B用户权限下所有的表(经常使用在两个数据库同步数据中),IP地址假设为:192.168.1.252,实例名为:ORCL ,这时候我们可以通过Dblink的方式进行访问:
第一步:
通过PL/SQL登录进入A用户;
第二步:
create public database link demolink connect to B identified by 密码
USING '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST =192.168.1.252)(PORT = 1521)))(CONNECT_DATA =(SID = ORCL)))';
第三步:访问某个表数据:
select * from 用户名.表名@创建的link名称;
以上述为例:
select * from B.user@demolink;