linux系统中使用oracle透明网关连接db2数据库,Linux系统中使用Oracle透明网关连接DB2数据库...
2. 安裝DB2for ODBC and CLI driver
a) 在ibm官網上下載,v9.7fp8_aix64_odbc_cli.tar.gz
b) 解壓這個文件,然后進去解壓后的目錄,目錄結構如下圖所示:
c) 執行下面幾條命令:
export? PATH=$PATH:/Oracle/odbc_cli/clidriver/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/oracle/odbc_cli/clidriver/lib
d) 執行下面這條命令:
cd? /oracle/odbc_cli/clidriver/cfg/
cp? db2cli.ini.sample? ? db2cli.ini
echo? “ “ > db2cli.ini
打開db2cli.ini文件,添加下面幾行:
Database=DB2NAME
Protocol=TCPIP
Hostname=192.168.0.5
ServiceName=60008
uid=odslook
pwd=odslook
autocommit=0
e) 執行下面這條命令,
cd /usr/local/unixODBC/etc
f) 打開odbc.ini文件,添加下面幾行:
[ODSBATDB]
Description = IBMDB2 ODBC data source
Driver? ? ? = DB2
Trace? ? ? = Yes
DMEnvAttr = SQL_ATTR_UNIXODBC_ENVATTR={DB2_CLI_DRIVER_INSTALL_PATH=/oracle/odbc_cli/clidriver}
g) 打開odbcinst.ini文件,添加下面幾行
[DB2]
Description? = IBM DB2 ODBC driver (64-bit)
Driver? ? ? = /oracle/odbc_cli/clidriver/lib/db2o.o
FileUsage? = 1
DontDLClose = 1
3. 配置oracle透明網關
a) 進入oracle的hs目錄
cd /oracle/app/database/product/11.2.0/db_1/hs/admin
b) cp initdg4odbc.ora initODSBATDB.ora
echo? “ “ >initODSBATDB.ora
c) 在initODSBATDB.ora文件中加入下面幾行:
# Thisis a sample agent init file that contains the HS parameters that are
#needed for the Database Gateway for ODBC
HS_FDS_CONNECT_INFO= ODSBATDB
HS_FDS_TRACE_LEVEL=? off
HS_FDS_SHAREABLE_NAME= /usr/local/unixODBC/lib/libodbc.so
HS_LANGUAGE="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"(按數據庫字符集來定)
setODBCINI=/usr/local/unixODBC/etc
d) 進入oracle監聽目錄
cd /oracle/app/database/product/11.2.0/db_1/network/admin
打開listener.ora文件,在文件中添加下面內容:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME= ODSBATDB)
(ORACLE_HOME = /oracle/app/database/product/11.2.0/db_1 )
(PROGRAM = dg4odbc)(ENVS=LD_LIBRARY_PATH=/oracle/app/database/product/11.2.0/db_1/lib:/oracle/odbc_cli/clidriver/lib:/usr/local/unixODBC/lib)
)
)
e) 打開tnsnames.ora文件,在文件中添加下面內容:
sqlplus? /nolog
conn/as sysdba
CREATEPUBLIC DATABASE LINK DBLINK? CONNECT TO“odslook” IDENTIFIED BY “odslook” USING ‘DB2’
select* from dual@dblink;
f) 重啟oracle數據庫和監聽:
sqlplus? /nolog
conn/as ssydba
shutdownimmediate
quit
lsnrctl? stop
lsnrctl? start
sqlplus/nolog
conn/as sysdba
startup
lsnrctlstatus
g) 在數據庫中創建link
sqlplus? /nolog
conn/as sysdba
CREATEPUBLIC DATABASE LINK DBLINK? CONNECT TO“odslook” IDENTIFIED BY “odslook” USING ‘DB2’
select* from dual@dblink;
h) oracle 透明網關搭建成功。
4. 注意事項:
由于機器軟硬件環境不一致,可能在別的機器中搭建透明網關時,會出現一些意想不到的異常,但主干部分應該都是一致,主要注意一下幾點:
a) 注意dg4odbc,unixODBC,db2o.o這個三個驅動不能搞混淆
b) 本文中”ODSBATDB“為DB2的數據庫名稱,所以在別的地方使用這個文檔,只需要將ODSBATDB名字換成對應的DB2數據庫名稱,odslook換成對應的用戶名和密碼,ip地址換成對應的ip。ORACLE_HOME換成對應的oracle安裝地址。
總結
以上是生活随笔為你收集整理的linux系统中使用oracle透明网关连接db2数据库,Linux系统中使用Oracle透明网关连接DB2数据库...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle怎么查询表空间信息,查询Or
- 下一篇: linux 其他常用命令