Oracle 使用者既存在PUBLIC/私有DBLINK 會優先選擇?

maohaiqing0304發表於2015-11-19


標題:Oracle 使用者既存在PUBLIC/私有DBLINK 會優先選擇? 

作者:lōττéry©版權所有[文章允許轉載,但必須以連結方式註明源地址,否則追究法律責任.]

筆記整理~

前言:
 使用者既存在PUBLIC/私有DBLINK的原因如下:
 原test_3使用者的儲存過程一直訪問CWJK_3使用者的DB_CWJK_3 public dblink ;
 後將CWJK_3使用者的資料複製到CWJK_2,test_3使用者的資料複製到test_2
 test的2個使用者都正常使用,想實現新使用者test_2訪問CWJK_2的資料,其他使用者正常訪問DB_CWJK_3 public的dblink;
 由於test_2使用者複製的test_3的儲存過程,新建dblink DB_CWJK_2,,所以需要在test_2建立一個私有dblink來訪問DB_CWJK_2;

測試結果:會優先選擇私有DBLINK

測試如下:

SQL> SELECT * FROM dba_db_links where db_link='DB_CWJK_3';
 
OWNER         DB_LINK          USERNAME       HOST                                                                             CREATED
------------- ---------------- -------------- -----------------------
PUBLIC       DB_CWJK_3         CWJK_3    (DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.49)(PO    2014/8/13 1
 
SQL> SELECT * FROM user_users@db_cwjk_3;
 
USERNAME   
-----------
CWJK_3    
 
SQL>
 

SQL> conn test_2/test_2@192.168.0.49:1521/db
Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
Connected as test_2@192.168.0.49:1521/db
 
SQL> create  database link db_cwjk_3 connect to cwjk_2 identified by cwjk_2 using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.49)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = fescotestdb)))';
 
Database link created
 
SQL> SELECT * FROM user_users@db_cwjk_3;
 
USERNAME   
-----------
CWJK_2    
 
SQL>

 
    【源於本人筆記】 若有書寫錯誤,表達錯誤,請指正...


此條目發表在 Oracle 分類目錄。將固定連線加入收藏夾。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28602568/viewspace-1841010/,如需轉載,請註明出處,否則將追究法律責任。

相關文章