首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 透明網關連接 SQL Server 完整配置實戰

     編輯:Oracle 資料庫基礎

環境資訊

  • Oracle 9.2.0.1.0:192.168.1.22:1521
  • SQL Server 2000:192.168.1.12,資料庫 db1
  • 透明網關與 Oracle 同機安裝

安裝透明網關

  1. 執行 Oracle Universal Installer,選擇 Custom 安裝類型。
  2. 選取 Oracle Transparent Gateway 9.2.0.1.0 → Oracle Transparent Gateway for Microsoft SQL Server 9.2.0.1.0(亦可選 Sybase 等其他異構資料庫)。
  3. 安裝完成後會產生目錄 D:\Oracle\ora92\tg4msql。

配置初始化參數檔

預設為 inittg4msql.ora。若 listener.ora 中 SID_NAME 設為 sql2000,則須對應建立 initsql2000.ora:

HS_FDS_CONNECT_INFO = "SERVER=192.168.1.12; DATABASE=db1"
HS_FDS_TRACE_LEVEL = OFF
HS_FDS_RECOVERY_ACCOUNT = RECOVER
HS_FDS_RECOVERY_PWD = RECOVER

配置 listener.ora

在 SID_LIST_LISTENER 區段加入:

(SID_DESC =
  (GLOBAL_DBNAME = tg4msql)
  (PROGRAM = tg4msql)
  (SID_NAME = sql2000)
  (ORACLE_HOME = D:\Oracle\ora92)
)

GLOBAL_DBNAME、SID_NAME 可自訂,但必須與初始化參數檔名稱對應(此處 SID_NAME=sql2000 → initsql2000.ora)。配置完成後重啟監聽器:

lsnrctl stop
lsnrctl start

配置 tnsnames.ora

sql = (DESCRIPTION =
  (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = wen)(PORT = 1521)))
  (CONNECT_DATA = (SID = sql2000))
  (HS = OK)
)
  • HOST:網關主機名或 IP(同機可用 localhost)
  • SID:對應 listener.ora 的 SID_NAME
  • HS = OK:標示為異構服務

建立 Database Link

DROP DATABASE LINK db_sql;
CREATE PUBLIC DATABASE LINK db_sql
  CONNECT TO wen IDENTIFIED BY wen
  USING 'sql';

wen/wen 為 SQL Server 資料庫 db1 的登入帳密。

測試連線

SQL> DESC football_team@db_sql;
-- 成功顯示遠端資料表結構

限制與擴充

  • 不支援遠端 DDL 操作。
  • 需連接多個 SQL Server 時:在 tg4msql 目錄建立多個 init*.ora,並同步更新 listener.ora、tnsnames.ora、建立對應 DB Link。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved