以下的文章主要是介紹Oracle數據庫訪問SYBASE相關數據的實際操作,以及配置TRANSPARENT GATEWAY FOR Sybase的實際操作步驟,以下就是其具體方案的描述,希望在你今後的學習中會有所幫助。
1.Oracle 所在服務器上安裝Sybase clIEnt(或者在同一台server上安裝Oracle 、Sybase服務器),確保能夠Oracle 訪問Sybase數據庫;
2.安裝TRANSPARENT GATEWAY FOR Sybase選件,要用自定義安裝。正確選擇Sybase的安裝目錄;
3.選擇一個sid字符串准備賦給Sybase數據庫。如:tg4sybs設置Sybase的dll路徑到環境變量PATH(這一步很重要);
4.修改初始化文件,默認的是:
- Oracle _HOME\tg4sybs\admin\inittg4sybs.ora
設置參數
- HS_FDS_CONNECT_INFO
格式:
- HS_FDS_CONNECT_INFO= server_name. database_name[,INTERFACE= interface_file]
- server_name. database_name
是大小寫敏感的。
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.taxHS_FDS_TRACE_LEVEL= OFFHS_FDS_RECOVERY_ACCOUNT=RECOVERHS_FDS_RECOVERY_PWD=RECOVER ## Environment variables required for Sybase#set SYBASE=d:\Sybase
上例中
server_name是migration_serv
database_name是tax
5.配置Oracle 網絡服務的listener,配置文件是:listener.ora
默認路徑:
- 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是特定的。如果是其他數據庫,會不同。
例子如下:
- (SID_DESC=(SID_NAME=tg4sybs) (Oracle _HOME = D:\Oracle \ora92)(PROGRAM=tg4sybs))
6.停止監聽
- lsnrctl stop
重新啟動監聽程序
- lsnrctl start
7.配置Oracle server的tnsnames.ora使其能夠Oracle 訪問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 監聽端口
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' ;
即可訪問Sybase 數據庫。
需要注意的是,Sybase數據庫的表名,字段名,如果是小寫的,那麼在Oracle 裡訪問的時候要加上雙引號""
如:
- SQL〉select "a" from "b"@sybs;
以上的相關內容就是對Oracle 訪問Sybase數據的介紹,望你能有所收獲。