Database Link 定義從本地 Oracle 資料庫到遠端資料庫的單向通訊通道。建立前需先在 tnsnames.ora 設定遠端連線別名(如 oradxp),並以 tnsping oradxp 驗證連通性。
CREATE PUBLIC DATABASE LINK oradxp.cug.edu.cn USING 'oradxp';
oradxp.cug.edu.cn:必須為遠端資料庫的 Global Name(可在遠端執行 SELECT * FROM global_name 取得)'oradxp':本地 tnsnames.ora 定義的連線字串別名SELECT * FROM global_name@oradxp.cug.edu.cn; SELECT * FROM scott.emp@oradxp.cug.edu.cn;
所有 SQL 陳述式在表名後加上 @link_name 即可存取遠端物件。
| 類型 | 驗證方式 | 適用情境 |
|---|---|---|
| Public Link | 使用目前登入本地的使用者/密碼連線遠端。遠端必須存在相同帳號密碼。 | 多使用者共用同一 Link,遠端帳號同步 |
| Private Link | 指定固定帳密:CREATE DATABASE LINK oradxp.cug.edu.cn CONNECT TO system IDENTIFIED BY pwd; | 集中管理、不同環境帳號不同時 |
SYS.LINK$ 系統表DROP PUBLIC DATABASE LINK link_name; 或 DROP DATABASE LINK link_name;(需以擁有者登入)