連接方式可以分為透明閘道和通用連接兩種。
透明閘道(Transparent Gateways) 透明閘道使用Oracle提供的特定閘道程式來設置代理,例如連接SQL Server則必須要有SQL Transparent Gateway for SQL Server。
通用連接(Generic Connectivity) 通用連接又分為ODBC連接和OLE DB連接兩種,其連接方法和透明閘道沒有本質區別,只不過通用連接是和資料庫一起提供的功能,你不需要向Oracle購買相關的透明閘道程式

1. 安裝軟體 transparent gateway

Oracle 9i在自定義,點選Transparent Gateway for MS SQL Server安裝,安裝完在oracle10下有一個 tg4msql文件夾

2. 設定listerner.ora

在D:\oracle\oracle10\NETWORK\ADMIN\listener.ora

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = D:\oracle\oracle10)

(PROGRAM = extproc))

(SID_DESC=

(SID_NAME=hrdb)

(ORACLE_HOME=D:\oracle\oracle10)

(PROGRAM=tg4msql)

))

3. 設定tnsnames.ora

在D:\oracle\oracle10\NETWORK\ADMIN\tnsnames.ora

hrdb =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = WJ-BPM)(PORT = 1521))

)

(CONNECT_DATA =

(SID = hrdb)

)

(HS=OK)

)

4. Copy D:\oracle\oracle10\tg4msql\admin\inittg4msql.ora 成inithrdb.ora

temp2

temp1

D:\oracle\oracle10\tg4msql\admin\inithrdb.ora

HS_FDS_CONNECT_INFO=SZ-ARIMACOMM-HR(SQL Server主機名稱).hrdb(DB Name)

HS_FDS_TRACE_LEVEL=OFF

HS_FDS_RECOVERY_ACCOUNT=RECOVER

HS_FDS_RECOVERY_PWD=RECOVER

5. 建DB LINK

create public database link HRDB

connect to KAZHONG

identified by KAZHONG

using hrdb

 

「注意事項」

查看init.ora文件,將global_names 值改成 false,之后啟起DB,(不重啟DB,也可執行alter system set global_names=false)

在sql server建帳號

temp1

temp2

temp3

創作者介紹

Oracle ERP學習經驗分享

SomebabyTina 發表在 痞客邦 留言(3) 人氣()


留言列表 (3)

發表留言
  • jainson
  • 如果是unix-like env.要連SQL Server就粉頭痛了 0.0
  • jason liu
  • 請問:
    我依妳的方法建立 db like 但在測試連結時 出現 不正確的帳號/密碼
    但我再三確認 帳號與密碼並沒有錯!不知可否指教我可能是哪個環節出錯
  • Nolem
  • unix-like 一樣可以 用 Transparent Gateways + unixodbc連接mssql .