你的位置:首页 > 数据库

[数据库]oracle DB_LINK

1.先创建远程数据库服务名(注意,如果服务器既有oracle服务端又有客户端,需要在服务端的tnsnames.ora中配置服务名,否则会报如下错误):

SQL> select count(*) from webxxxt_pic.xxx@pic_link;select count(*) from webxxxt_pic.xxx@pic_link                       *第 1 行出现错误:ORA-12154: TNS: 无法解析指定的连接标识符

2.给需要赋予创建DB_LINK的权限:

grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to scott;

查看哪些用户拥有创建DB_LINK的权限:

select * from user_sys_privs t where t.privilege like upper('%link%');

3.用被赋予权限的用户创建DB_LINK:

create database link DBLINK_NAME connect to USER01 identified by PASSWORD using 'TNS_NAME';

DBLINK_NAME : DB_LINK的名字
USER01       : 远程数据库的账户
PASSWORD     : 远程数据库的账户
TNS_NAME      : 远程数据库服务名

4.查看oracle的所有DB_LINK:

select owner,db_link,username from dba_db_links;

5.使用DB_LINK:

select * from scott.tb_test@DBLINK_NAME;
insert into scott.tb select * from scott.tb@pic_link;