共计 1738 个字符,预计需要花费 5 分钟才能阅读完成。
1、背景说明
公司一直会碰到异构数据库的连接问题,比如 Oracle 需要 dblink as400,dblink DB2,如果此些数据库版本比较老的话,在 Linux 64 位环境中配置此类数据库的驱动,太让人头疼了。
可以使用 Oracle gateway 方式,将 gateway 部署在一台 windows 32 位的服务器(可以有效解决数据库驱动问题),odbc 至异构数据库。
将 gateway 从 db 服务器中分离出来单独安装
单独开启监听,给需链接异构服务器至数据库提供连接服务
新增 gateway 服务器安装 windows 32 位系统,有效解决数据库驱动兼容性问题
2、架构说明
3、GW 安装及配置说明
1、安装服务器 gateway,仅安装透明网关
OS SERVER 2003 sp2,32 位 内存 2g 硬盘空间 50GB
透明网关版本 11gr2 32 位
2、配置监听
3、安装 db2 和 as400 客户端程序(提供数据库驱动文件)4、配置 odbc,并测试连接正常
5、添加并修改透明网关配置文件(文件位置在 home 目录下 C:\product\11.2.0\tg_1\hs\admin)添加文件命名为 init_sid.ora
注意点:sid 和 odbc 中名称要一致
# This is a sample agent init file that contains the HS parameters that are
# needed for an ODBC Agent.
#
# HS init parameters
#
HS_FDS_CONNECT_INFO = hisp
HS_FDS_TRACE_LEVEL = off
#
# Environment variables required for the non-Oracle system
#
#set <envvar>=<value>
6、修改 tnsnames
C:\product\11.2.0\tg_1\NETWORK\ADMIN
HISP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = gateway 服务器 ip)(PORT = 1521))
)
(CONNECT_DATA =
(SID = hisp)
)
(HS = OK)--------- 使用 gateway 方式连接
)
7、修改 listener,并重启监听
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = hisp)
(ORACLE_HOME = C:\product\11.2.0\tg_1)
(SID_NAME = hisp)
(PROGRAM = dg4odbc)----- 注意点:9i 透明网关此处使用的程序为 hs
)
)
此时 gateway 服务器已配置完成
4、Oracle DB 配置
只需在需求 DB 的 tns 中添加如下条目即可
HISP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = *.*.*.*)(PORT = 1521))
)---------------------------*.*.*.* 为 gateway 服务器
(CONNECT_DATA =
(SID = hisp)
)
(HS = OK)-------------- 使用 gateway 方式连接
)
5、测试结果说明
测试结果:创建 dblink
create database link wcelpptp connect to "******" identified by "******" using 'hisp'
测试 dblink,测试 OK
经测试:需求 DB 无 os 版本限制,windows 和 Linux 均可正常连接
更多 Oracle 相关信息见 Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-04/142561.htm
正文完
星哥玩云-微信公众号