Oracle 10g 建立 DB link

來源:互聯網
上載者:User

某些時候,需要關聯不同的資料庫進行資料查詢、操作等。

在Oracle中,關聯不同的資料庫進行表關聯,就要用到了資料庫連接(DB link)。

建立DB link有兩種方法:通過SQL語句建立,通過可視化介面建立(其實也是執行的SQL語句)。

1.通過PL/SQL Developer 工具建立


Name:此DBLINK的名字,你自己隨便起。比如:DEMO

UserName:資料庫登陸使用者名稱

Password:資料庫登陸密碼

Database:(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=DEMO)))

以上紅色字型內容從以下地方可查詢:\product\10.2.0\client_1\network\admin\tnsnames.ora

DEMO =  (DESCRIPTION =    (ADDRESS_LIST =      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))    )    (CONNECT_DATA =      (SERVER = DEDICATED)      (SERVICE_NAME = DEMO)    )  )

將上面的"DEMO="去掉,其餘內容把分行符號、空格去掉組成一個字串即可。

然後點擊“Apply”按鈕即可。

建立好後,會在Database links菜單下顯示。

測試DB link是否有效,執行語句:Select * from student@DEMO

其中,student為遠端資料庫的表名。


2.通過SQL語句建立

create public database link V_SERVICE_NAME connect to V_USERNAME identified by V_PASSWORD using '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.1)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=V_SERVICE_NAME)))';

其中:

V_SERVICE_NAME表示服務名,可通過SQL語句查詢:SELECT * FROM GLOBAL_NAME; --查看服務名

V_USERNAME表示登入遠端資料庫的帳號

V_PASSWORD表示登入遠端資料庫的密碼

 

PS:經本人測試,當tns字串中帶有分行符號時,該DB link無效;當DB link名稱不是服務名時,該DB link無效。







相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.