oracle创建dblink 
1.应用场景:

现有两个数据库,一个是erp1,一个是erp2,现要通过dblink在erp1连接erp2。

2.先在erp1查看是erp1用户否拥有创建dblink权限。在erp1中执行

select * from user_sys_privs where privilege like upper('%DATABASE LINK%'); 
有权限显示如下



没有权限到sys里面授权

grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to erp1用户; 
3.在erp1下创建dblink。

create public database link erp2_link    
connect to erp2用户 identified by erp2密码  
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = erp2IP地址)(PORT = erp2端口)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';
其中erp2_link 为dblink名字,

connect to 需要连接的用户名 identified by 密码

HOST=需要连接数据库的ip

SERVICE_NAME=数据库实例

查看是否创建成功
select * from user_sys_privs where privilege like upper('%LINK%');
select * from dba_db_links;
select owner,object_name from dba_objects where object_type='DATABASE LINK';--查询时间久
4.操作:

查询erp2里面的数据

select * from hr_user@erp2_link

5.删除dblink

drop  public database link  erp2_link