database link

1 描述

     创建database link 可以实现服务器间数据库的访问。

 

2  查看权限

     user_sys_privs表记录用户的权限,用sys用户登录查看

SQL> select * from user_sys_privs where privilege like upper('%link%');
 
USERNAME                       PRIVILEGE                                ADMIN_OPTION
------------------------------ ---------------------------------------- ------------
SYS                            DROP PUBLIC DATABASE LINK                NO
SYS                            CREATE DATABASE LINK                     NO
SYS                            CREATE PUBLIC DATABASE LINK              NO

  

CREATE DATABASE LINK

      所创建的dblink只能是创建者能使用,别的用户使用不了

CREATE PUBLIC DATABASE LINK

      public表示所创建的dblink所有用户都可以使用

DROP PUBLIC DATABASE LINK

      删除用户的权限

 

将权限赋予用户

SQL> grant CREATE PUBLIC DATABASE LINK, DROP PUBLIC DATABASE LINK TO SCOTT;
 
Grant succeeded

 3  创建 dblink

使用scott登录,如果本地数据库tnsnames.ora文件中配置了远程访问数据库。

SQL> create public database link to_scott connect to scott identified by tiger using 'PP';
 
Database link created

to_scott为创建dblink的名称,PP为远程数据库的实例名。scott 与 tiger 分别为用户名和密码。访问远程数据库的方式为

SQL> select * from emp@to_scott;

如果本地库没有配置远程访问数据库的实例,则可以通过以下方式创建dblink

create public database link to_scott connect to scott identified by tiger using '(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )'

 

posted @ 2014-08-07 10:20  方诚  阅读(205)  评论(0)    收藏  举报