企業異構資料庫整合,需在 Oracle 中透過 Database Link 即時查詢、更新 Sybase 資料,避免 ETL 延遲與資料不一致。
Oracle 伺服器需安裝 Sybase Client(或同機安裝 Sybase Server),確保可連線至 Sybase。
使用自訂安裝,正確指定 Sybase 安裝目錄。
tg4sybs)PATH(關鍵步驟)檔案位置:$ORACLE_HOME/tg4sybs/admin/inittg4sybs.ora
HS_FDS_CONNECT_INFO = server_name.database_name[, INTERFACE=interface_file]
# 範例
HS_FDS_CONNECT_INFO = migration_serv.tax
HS_FDS_TRACE_LEVEL = OFF
HS_FDS_RECOVERY_ACCOUNT = RECOVER
HS_FDS_RECOVERY_PWD = RECOVER
set SYBASE = d:\Sybase
注意: server_name.database_name 大小寫敏感。
SID_LIST_LISTENER = (SID_LIST = (SID_DESC =
(SID_NAME = tg4sybs)
(ORACLE_HOME = D:\Oracle\ora92)
(PROGRAM = t4sybs)
))
lsnrctl stop
lsnrctl start
sybs = (DESCRIPTION =
(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = dw-server1)(PORT = 1521)))
(CONNECT_DATA = (SID = tg4sybs))(HS = OK)
)
CREATE DATABASE LINK sybs CONNECT TO sa IDENTIFIED BY password USING 'sybs';
Sybase 表名、欄位名若為小寫,Oracle 查詢時需加雙引號:
SELECT "column_name" FROM "table_name"@sybs;