Oracle 10g 創建 DB link

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

在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

  1. DEMO =  
  2.   (DESCRIPTION =  
  3.     (ADDRESS_LIST =  
  4.       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))  
  5.     )  
  6.     (CONNECT_DATA =  
  7.       (SERVER = DEDICATED)  
  8.       (SERVICE_NAME = DEMO)  
  9.     )  
  10.   )  

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

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

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

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

其中,student爲遠程數據庫的表名。


2.通過SQL語句創建

create [public] database link V_LINK_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_LINK_NAME表示服務名

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

V_USERNAME表示登錄遠程數據庫的帳號

V_PASSWORD表示登錄遠程數據庫的密碼

PS:經本人測試,當tns字符串中帶有換行符時,該DB link無效。


當數據庫參數global_names=truedblink名必須與遠程數據庫的全局數據庫名(global_name)相同;

當數據庫參數global_names=false,不要求dblink和遠程數據庫全局數據庫名相同

命令行窗口(command window)可查看數據庫參數:

SQL> show parameter global_names; --查看數據庫參數global_names的值

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

global_names                         boolean     FALSE 

 

SQL> select * from global_name;

GLOBAL_NAME

--------------------------------------------------------------------------------

STOCK.TRAVELSKY


--查看連接
select * from dba_db_links;
select owner,object_name from dba_objects where object_type='DATABASE LINK';

--使用連接
select * from table_name@link_name;

--刪除連接 
drop [public] database link link_name;
發佈了13 篇原創文章 · 獲贊 4 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章