建立oracle資料庫鏈路 dbLink

2022-02-25 03:16:34 字數 2247 閱讀 2773

建立資料庫鏈路

說明:建立資料庫鏈路,可以實現兩個不同的資料庫之間的控制訪問。以下用簡單的例子說明一下建立資料庫鏈路的步驟:

一.             實現功能

主要是實現兩台不同機器的兩個不同應用的資料交流。假設均使用oracle資料庫,a應用開放兩個資料表,b應用開放兩個檢視。要實現a資料庫可以訪問b應用的兩個檢視的資料,b資料庫可以訪問a應用的兩個資料表的資料。

二.             具體步驟

以下簡要說明a的建立資料鏈路及相關的操作:

1.       a先使用賬號admin_a/admin_a_psw建立兩個表,如:table_a1 和 table_a2。這兩個表就是要開放給使用者b的。

2.       a建立乙個使用者,如:guest_b/ guest_b_psw。這個使用者就是要開放給使用者b來訪問開放的表的。

**如下:

create user guest_b identified by guest_b_psw default tablespace table_space temporary tablespace pcs_temp;

grant connect to guest_b;

3.       a使用管理員賬號為guest_b使用者授權兩個表,以下授以完全控制兩個表的許可權。

**如下:

grant all on table_a1 to guest_b;

grant all on table_a2 to guest_b;

4.       a在netmanager中建立到b資料庫伺服器的netservicename,也可以修改在oracle的安裝目錄下的檔案\oracle\network\admin\tnsnames.ora,在裡面新增乙個netservicename,如「to_b」。

5.       建立資料鏈路名為「goto_b」,要使用第四步建立的netservicename: to_b。這裡假設了b同樣建立了乙個賬號guest_a/guest_a提供給a使用。

create public database link " goto_b "

connect to "guest_a" identified by "guest_a" 

using ' to_b ' ;

另提供乙個範例,這個例子建立可以不用配置netservicename就可以直接建立:

-- drop existing database link

drop database link toccic;

-- create database link

create database link toccic

connect to ztry identified by ztry

using '(description =

(address_list =

(address = (protocol = tcp)(host = fengwenwei)(port = 1521))

)(connect_data =

(sid = ztry)

))';

6.       通過建立同義詞來訪問b的檢視資料。注意:使用時要在檢視或表前面加上b提供的檢視的真正建立者的名稱:admin_b,如這裡假設b使用賬號admin_b建立了兩個檢視view_b1和view_b2。另外,是通過使用剛才建立的鏈路goto_b來進行連線。這樣,就可以在本地直接使用view_b1和view_b2來訪問b的兩個檢視的資料。如果不建立同義詞的話,可以使用方法admin_b. view_b1來進行訪問。

create synonym view_b1 for admin_b. view_b1@ goto_b;

create synonym view_b2 for admin_b. view_b2@ goto_b;

7.       同樣道理,b使用者也執行上述類似操作,建立乙個使用者guest_a/ guest_a_psw,然後授權給兩個檢視,並建立鏈路。這樣,a與b就可以實現資料互通。

三.             小結

1.       在建立鏈路時,如果是使用生成鏈路**測試連線不成功的話,請使用enterprise manager console來建立。

2.       在注意兩邊的賬號使用對應,不要搞混。

3.       注意:oracle中的service_name可以對應多個sid。

4.       注意如果鏈路建立不成功,請檢查oracle中的引數配置是否正確,如:global_names需要設定為true。oracle9i安裝時預設為false。

Oracle資料庫鏈路

三 dblink的使用 四 刪除dblink 五 應用經驗 資料庫鏈路 database link 簡稱dblink,它是乙個通道,是本地資料庫與遠端資料庫之間的通道,通過dblink,在本地資料庫中可以直接訪問遠端資料庫的物件。dblink不是應用程式與資料庫之間的通道,而是資料庫之間的通道。用d...

Oracle資料庫鏈路

三 dblink的使用 四 刪除dblink 五 應用經驗 資料庫鏈路 database link 簡稱dblink,它是乙個通道,是本地資料庫與遠端資料庫之間的通道,通過dblink,在本地資料庫中可以直接訪問遠端資料庫的物件。dblink不是應用程式與資料庫之間的通道,而是資料庫之間的通道。用d...

建立 DB2 資料庫

可以使用 tivoli privacy manager 資料庫建立程式或使用資料庫產品介面可以建立 tivoli privacy manager 資料庫 表和配置資料庫。使用 db2 資料庫建立程式 使用 tivoli privacy manager 資料庫建立程式來建立 tivoli privac...