Oracle private dblink和pubic dblink

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle private dblink和pubic dblink相关的知识,希望对你有一定的参考价值。

DB : 11.2.0.3.0


Oracle DBLINK 创建分为private 和 public dblink,默认创建的为private ; private dblink 只有创建的schema才能删除,sys也删除不了;public dblink 任意schema都可以删除,只要权限够。

一、PRIVATE DBLINK:
收回dba权限:
SQL> revoke dba from yoon;

Revoke succeeded.


尝试连接,无法连接:
SQL> conn yoon/yoon
ERROR:
ORA-01045: user YOON lacks CREATE SESSION privilege; logon denied


Warning: You are no longer connected to ORACLE.


连接sys
SQL> conn / as sysdba
Connected.


授权
SQL> grant connect to yoon;

Grant succeeded.


SQL> grant create database link to yoon;

Grant succeeded.


SQL> conn yoon/yoon
Connected.

 
当前用户:
SQL> show user
USER is "YOON"


创建dblink:
SQL> create database link dblink_yoon connect to yoon identified by yoon using ‘YOON‘;

Database link created.


连接sys用户:
SQL> conn / as sysdba
Connected.


删除dblink:
SQL> drop database link dblink_yoon;
drop database link dblink_yoon
                   *
ERROR at line 1:
ORA-02024: database link not found


SQL> show user
USER is "SYS"
SQL> drop database link dblink_yoon ;
drop database link dblink_yoon
                   *
ERROR at line 1:
ORA-02024: database link not found


查看dblink
SQL> select * from dba_db_links;

OWNER      DB_LINK       USERNAME   HOST       CREATED
---------- ------------- ---------- ---------- ---------
YOON       DBLINK_YOON   YOON       YOON       14-NOV-14


连接创建dblink用户:
SQL> conn yoon/yoon
Connected.

SQL> drop database link dblink_yoon ;

Database link dropped.

二、PUBLIC DBLINK:

SQL> conn / as sysdba
Connected.
SQL> grant dba to yoon;

Grant succeeded.

SQL> conn yoon/yoon
Connected.
SQL> show user
USER is "YOON"
SQL> create public database link dblink_yoon connect to yoon identified by yoon using ‘YOON‘;

Database link created.


SQL> conn / as sysdba
Connected.

SQL> grant dba to yoon;

 

Grant succeeded.


SQL> conn yoon/yoon
Connected.

SQL> show user
USER is "YOON"

SQL> create public database link dblink_yoon connect to yoon identified by yoon using ‘YOON‘;

Database link created.


SQL> conn / as sysdba
Connected.

SQL> select * from dba_db_links;

OWNER      DB_LINK       USERNAME   HOST       CREATED
---------- ------------- ---------- ---------- ---------
PUBLIC     DBLINK_YOON   YOON       YOON       14-NOV-14

 

SQL> drop public database link dblink_yoon;

Database link dropped.

以上是关于Oracle private dblink和pubic dblink的主要内容,如果未能解决你的问题,请参考以下文章

创建在SQLServer 和 Oracle的 DBLINK

Oracle创建database link(dblink)和同义词(synonym)

ORACLE 如何检查dblink是不是正常

oracle需要创建dblink给啥权限

oracle 数据库 dblink怎么用

oracle dblink