ORACLE9i 的透明網(wǎng)關(guān)的配置
2024-08-29 13:30:38
供稿:網(wǎng)友
oracle實(shí)現(xiàn)異種數(shù)據(jù)庫(kù)連接服務(wù)的技術(shù)叫做透明網(wǎng)關(guān)(transparent gateway)。
目前oracle利用透明網(wǎng)關(guān)可以實(shí)現(xiàn)和sql server、sybase、db2等多種主流數(shù)據(jù)庫(kù)的互聯(lián)。
筆者由于工作需要,通過(guò)oracle訪問(wèn)sybase數(shù)據(jù)庫(kù),把配置oracle9i transparent gateway for sybase
的步驟寫(xiě)成文檔,供需要的網(wǎng)友參考!
配置transparent gateway for sybase步驟
1.
oracle所在服務(wù)器上安裝sybase client(或者在同一臺(tái)server上安裝oracle、sybase服務(wù)器)
確保能夠訪問(wèn)sybase數(shù)據(jù)庫(kù)
2.
安裝transparent gateway for sybase選件,要用自定義安裝。
正確選擇sybase的安裝目錄
3.
選擇一個(gè)sid字符串準(zhǔn)備賦給sybase數(shù)據(jù)庫(kù)。如:tg4sybs
設(shè)置sybase的dll路徑到環(huán)境變量path(這一步很重要)
4.
修改初始化文件,默認(rèn)的是:
oracle_home/tg4sybs/admin/inittg4sybs.ora
設(shè)置參數(shù)
hs_fds_connect_info
格式:hs_fds_connect_info= server_name. database_name[,interface= interface_file]
server_name. database_name是大小寫(xiě)敏感的。
interface可選
例子:如下
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
# this is a sample agent init file that contains the hs parameters that are
# needed for the transparent gateway for sybase
#
# hs init parameters
#
hs_fds_connect_info=migration_serv.tax
hs_fds_trace_level=off
hs_fds_recovery_account=recover
hs_fds_recovery_pwd=recover
#
# environment variables required for sybase
#
set sybase=d: ybase
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
上例中
server_name是migration_serv
database_name是tax
5.
配置oracle網(wǎng)絡(luò)服務(wù)的listener,配置文件是:listener.ora
默認(rèn)路徑:oracle_home/network/admin
加入如下
sid_list_listener=
(sid_list=
(sid_desc=
(sid_name= gateway_sid)
(oracle_home= oracle_home_directory)
(program=tg4sybs)
)
)
gateway_sid就是3選擇的sid字符串
oracle_home_directory是oracle_home
tg4sybs若是sybase是特定的。如果是其他數(shù)據(jù)庫(kù),會(huì)不同。
例子如下:
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
(sid_desc=
(sid_name=tg4sybs)
(oracle_home = d:/oracle/ora92)
(program=tg4sybs)
)
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
6.
停止監(jiān)聽(tīng)
lsnrctl stop
重新啟動(dòng)監(jiān)聽(tīng)程序
lsnrctl start
7.
配置oracle server的tnsnames.ora使其能夠訪問(wèn)sybase
connect_descriptor=
(description=
(address=
(protocol=tcp)
(host= host_name)
(port= port_number)
)
(connect_data=
(sid= gateway_sid))
(hs=ok))
connect_descriptor是連接串,任取,一般為sybs
host_name:oracle server的name
port_number:oracle監(jiān)聽(tīng)端口
gateway_sid就是3選擇的sid字符串
例子如下:
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
sybs=
(description=
(address_list =
(address=(protocol=tcp)(host= dw-server1)(port= 1521))
)
(connect_data=
(sid= tg4sybs)
)
(hs=ok)
)
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
8.建立database link
如:
create database link sybs connect to sa
identified by prient
using 'sbys' ;
即可訪問(wèn)sybase 數(shù)據(jù)庫(kù)。
需要注意的是,sybase數(shù)據(jù)庫(kù)的表名,字段名,如果是小寫(xiě)的,那么在oracle里訪問(wèn)的時(shí)候要加上雙引號(hào)""
如:
sql〉select "a" from "b"@sybs;
本文來(lái)源于網(wǎng)頁(yè)設(shè)計(jì)愛(ài)好者web開(kāi)發(fā)社區(qū)http://www.html.org.cn收集整理,歡迎訪問(wèn)。