oracle账号访问权限Oracle的DBLink

有时候,需要在两个Oracle数据库之间手工同步数据时,DBLink是最方便快捷的手段之一,创建DBLink的方式一般是这样:

Sql代码 
create public database link <DBLink名称> connect to <被连接库的用户名> identified by <被连接库的密码> using '<Oracle客户端工具建立的指向被连接库服务名>'; 

create public database link <DBLink名称> connect to <被连接库的用户名> identified by <被连接库的密码> using '<Oracle客户端工具建立的指向被连接库服务名>';

例如:

Sql代码 
create public database link XMDS_KF connect to XMDS identified by XMDS using 'XMDS_KF'; 

create public database link XMDS_KF connect to XMDS identified by XMDS using 'XMDS_KF';

 

但这种方式有个缺点就是必须要在服务器建立一个被连接库的服务名,如果不建则会报错:

ORA-12154: TNS: 无法处理服务名

,但如果直接使用地址来建DBLink,就可以省去配置服务名的麻烦了:

 

Sql代码 
create public database link XMDS_KF connect to XMDS identified by XNDS using '(DESCRIPTION =  
   (ADDRESS_LIST =  
     (ADDRESS = (PROTOCOL = TCP)(HOST = 145.24.16.182)(PORT = 1521))  
   )  
   (CONNECT_DATA =  
     (SERVICE_NAME = XMDS)&nbsoracle账号p; 
   )  
)'; 

此条目发表在oracle metalink账号分类目录,贴了标签。将固定链接加入收藏夹。