Database Link(DB Link)讓本地資料庫能透明存取遠端資料庫物件,是跨資料庫查詢、資料同步的基礎設施。Oracle 提供圖形介面(PL/SQL Developer)與 SQL 指令兩種建立方式,適用不同場景。

-- 1. 刪除同名舊 DB Link(避免 ORA-02011)
DROP PUBLIC DATABASE LINK dblink_name;
-- 2. 建立新 DB Link
CREATE PUBLIC DATABASE LINK dblink_name
CONNECT TO tast IDENTIFIED BY test
USING '192.168.1.73:1521/Oracle';
USING 子句說明: 可使用 Easy Connect 字串(如上),或 tnsnames.ora 中定義的 TNS 別名(如 USING 'ORCL_REMOTE')。
-- 測試連線
SELECT * FROM dual@dblink_name;
-- 查詢遠端表
SELECT * FROM employees@dblink_name WHERE department_id = 10;
| 需求 | 設定方式 |
|---|---|
| 固定使用者(不暴露密碼) | CREATE DATABASE LINK ... CONNECT TO CURRENT_USER USING ...(需啟用全域使用者/Enterprise User Security) |
| 指定連線逾時 | 在 tnsnames.ora 服務定義加入 (CONNECT_TIMEOUT=10) |
| 啟用連線池 | 遠端資料庫啟用 DRCP(Database Resident Connection Pool),DB Link 自動受益 |
| 加密傳輸 | 配置 Oracle Net Services SSL/TLS,sqlnet.ora 設定 SQLNET.ENCRYPTION_CLIENT=REQUIRED |