oracle透明网关链接sqlserver配置方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
oracle10g透明网关
oracle 10g透明网关访问sqlserver2008
一、环境如下:
ORACLE 10g 安装在:192.168.3.114 的window7系统。
(版本:Oracle10g第2版10.2.0.3-10.2.0.410203vistaw2k8x86productiondb)
SqlServer 2008安装在:192.168.3.188 的window server 2008 Enterprise 二、下载透明网关(GATEWAY)
oracle 10g下,透明网关是一个单独组件,可以到oracle官方网站下载
/technology/software/products/database/oracle10g/ht docs/10201winsoft.html
这个安装包有240M左右。
名称为10201_gateways_win32.zip 32位的
三、安装透明网关
将透明网关安装在sqlserver服务器上,点击setup.exe,启动安装界面,安装oracle transparent gateway for microsoft sql server;下一步,输入sqlserver地址和sqlserver 数据库名,这里可以输入正确的,也可以随便输入,或者留空,现安装完成后再配置。
安装完后,会弹出配置监听界面,点击取消即可。
四、配置透明网关参数文件
找到透明网关路径:D:\oracle\product\10.2.0\tg_1\tg4msql\admin
安装透明网关时会生成一个默认参数文件:inittg4msql.ora,它的sid是tg4mssql,可以使用这个文件,也可以新建一个文件。
现在COPY一份命名为initTTSMarketingV3.ora,名字最好与SQL SERVER数据库一致,且要注意格式:
init<sid>.ora,可以理解为oracle的参数文件,现在编辑参数文件:
# This is a sample agent init file that contains the HS parameters that are
# needed for the Transparent Gateway for SQL Server
#
# HS init parameters
#
HS_FDS_CONNECT_INFO="SERVER=192.168.3.188;DATABASE=TTSMarketin gV3"
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
HS_FDS_CONNECT_INFO设置有多种格式,如:
HS_FDS_CONNECT_INFO=server_name.db_name,但这种写法server_name不能为IP,且端口必须为默认的1433,如:
在安装透明网关如果设置服务器和数据库即为上面格式。
五、透明网关服务器上配置监听
找到listener文件所在路径
D:\oracle\product\10.2.0\tg_1\NETWORK\ADMIN\listener.ora,这些配置与DB配置类似
# listener.ora Network Configuration File:
#d:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = d:\oracle\product\10.2.0\tg_1)
(PROGRAM = extproc)
)
(SID_DESC=
(SID_NAME=TTSMarketingV3)
(ORACLE_HOME=D:\oracle\product\10.2.0\tg_1)
(PROGRAM=tg4msql)
)
)
SID_Name与参数文件的名称initTTSMarketingV3.ora相对应,且PROGRAMN要为tg4msql
配置完成后启动一下监听,如果出现如下信息则配置成功:
七、配置tnsname.ora
D:\oracle\product\10.2.0\tg_1\NETWORK\ADMIN目录下配置tnsnames.ora文件,如下:
TTSMarketingV3=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.114)(PORT = 1521))
)
(CONNECT_DATA =
(SID=TTSMarketingV3)
)
(HS = OK)
)
注意:HS=OK,这主要由于是用于Oracle server调用异构服务器进行处理必须的。
且host应该为oracle数据库的IP地址,而不是sqlserver的IP地址
八、创建访问SQL SERVER访问账号
由于使用DBLINK不能为空密码,为了使用数据安全性,在192.168.3.188服务器创建一个登录账号为admin,密码为admin,并设置权限访问TTSMarketingV3数据库权限。
九、Oralce 创建DBLINK
create public database link TTS connect to "admin" identified by "admin" using '(DESCRIPTION =
(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.3.114)(PORT=1521)) (CONNECT_DATA=(SID=TTSMarketingV3)
)
(HS = ok))';
注意DESCRIPTION的HS与tnsname.ora中的HS=OK。
10、测试连接并使用SQL
SQL>Select * From customers@TTS;
出现数据则配置成功!
在进行配置透明网关访问SQL SERVER时,整个过程的SID(DBLINK命名随意)最好命名与SQL SERVER数据库一致,如TTSMarketingV3,否则很容易出现以下错误信息:
ORA-28545: error diagnosed by Net8 when connecting to an agent
Unable to retrieve text of NETWORK/NCR message 65535
ORA-02063: preceding 2 lines from UFDATA2009
另外在DBLINK访问用户账号最好使用小写且使用""双引号,如"admin" ,这样可以SQL SERVER2005和SQL SERVER2008访问,另外就是ORACLE 方便访问SQL SERVER 的SQL程序。