1. 概述
ORACLE透明网关for MSSQL的产品名称为Oracle Transparent Gateway for SQL Server。使用该产品后,对于Oracle数据库而言,屏蔽了SQL Server的异构性,可直接在Oracle数据库中对SQL Server数据进行大多数操作。通过透明网关在出口退税审核系统和综合管理系统建立DB Link,可实现数据的定时抽取。
透明网关需要安装在Windows 2000 Professional/Server平台,由于进行数据抽取时,对网关服务器性能要求不高,可以使用PC机代替或者与其它服务器共享。
2. 准备工作
2.1. 环境要求
| 项目 | 最低配置/要求 |
硬件 | CPU | PIII 500 |
内存 | 128M | |
可用硬盘空间 | 500M | |
网卡 | 100M | |
软件 | 操作系统 | Windows 2000 Professional or Server + Service Pack 4 |
SQL Server客户端 | SQL Server Client 7.0以上 | |
透明网关安装程序 | ORACLE 9i Release 2 for Windows(9.2.0.1)安装介质 | |
补丁 | ORACLE 9i Release 2 Patch Set 6 for Windows(9.2.0.7) |
3. 安装和配置
3.1. 建立SQL SERVER别名
运行Client Network Utility。
点击添加。
如图配置好出口退税数据库的相关参数(假设IP地址为10.1.1.12)。
3.2. 安装透明网关
Oracle透明网关和Oracle数据库可以不在同一台机器上,Oracle透明网关for MSSQL必须要安装在Windows操作系统下。执行安装程序中的setup.exe,出现欢迎窗口。下面安装步骤如无特别说明,均点击“下一步”。
确认将“目标”下的输入框内容按图所示输入后,点击下一步。
选择安装数据库。
选择自定义
从产品组件中选择Oracle Transparent Gatewey for Microsoft SQL Server 9.2.1.0(如图)。
在“Microsoft SQL Server”栏中输入ckts(即前面设置的数据库别名,参见建立SQL SERVER别名,如未建立别名可以直接输入IP地址),在“Microsoft SQL Database”栏中输入退税审核系统数据库名称,如tsshv600。
复制文件至结束。
安装结束后会自动运行NET Configuration Assistant(如果已经配置了监听程序,安装是没有选择该组件,就不会执行),如下图,选择“监听程序配置”按照默认值配置监听程序。
3.3. 透明网关补丁升级
如果是Windows XP或Windows2003系统可以不用升级补丁,Windows2000需要对透明网关进行补丁升级。补丁程序包含在数据库补丁程序中。停止所有ORACLE进程后,执行补丁安装程序。
将目标中名称选择刚才安装的名称就可以了。
3.4. 透明网关参数配置
3.4.1. 创建初始化文件
在C:/oracle/ora92/tg4msql/ADMIN/下复制原有的inittg4msql.ora文件将其另存为一个新文件initckts.ora放在在相同的目录下,文件名需要和数据库名一致,确认其中的内容含有HS_FDS_CONNECT_INFO=ckts.tsshv600一行。
3.4.2. 修改监听参数
修改listener.ora文件增加监听,文件路径是C:/oracle/ora92/network/ADMIN/listener.ora,增加下面红色斜体的部分。
# LISTENER.ORA Network Configuration File: C:/oracle/ora92/network/admin/listener.ora
# Generated by Oracle configuration tools.
# LISTENER.ORA Network Configuration File: C:/oracle/ora92/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = classroom118)(PORT = 1521))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:/oracle/ora92)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = ckts)
(ORACLE_HOME = C:/oracle/ora92)
(PROGRAM = tg4msql)
)
)
修改完毕后在Windows服务列表中重新启动监听服务: