Database Link(DB Link)允許本地資料庫存取遠端資料庫物件。依遠端連線資訊是否已在本地 tnsnames.ora 定義,分為兩種建立方式。
CREATE PUBLIC DATABASE LINK fwq12
CONNECT TO fzept IDENTIFIED BY neu
USING 'fjept'; -- 本地 tnsnames.ora 定義的服務名稱
CREATE DATABASE LINK linkfwq
CONNECT TO fzept IDENTIFIED BY neu
USING '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.142.202.12)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = fjept)
)
)';
說明:HOST 為遠端資料庫 IP,SERVICE_NAME 為遠端資料庫服務名稱(非 SID)。
SELECT * FROM 表名@DBLINK名稱;
-- 本地同義詞
CREATE SYNONYM 同義詞名 FOR 表名;
-- 遠端同義詞
CREATE SYNONYM 同義詞名 FOR 表名@DBLINK名稱;
DROP PUBLIC DATABASE LINK linkfwq;
GLOBAL_NAMES = TRUE 時,DB Link 名稱必須與遠端資料庫全域名稱一致。SELECT * FROM GLOBAL_NAME;SYS 或 SYSTEM 權限執行。tnsnames.ora。