安装Oracle Transparent Geteways:
1、'开始'菜单的'Oracle Installation Products'下的'Universal Installer'
\\192.168.0.8\e$\数据工具\oracle9.2\ORANT920\ORA92_1\NT\I386\stage\products.jar
下一步-
2、选择安装类型:
自定义,下一步
3、选择可用产品组件:
将 'Oracle Transparent Geteways 9.2.0.1.0'下的'Oracle Transparent Geteways for Microsoft SQL Server 9.2.0.1.0'选中;
将 'Oracle Transparent Geteways 9.2.0.1.0'下的'Oracle Transparent Geteways for Sybase 9.2.0.1.0'选中;
下一步;
4、设置Sybase路径
选择你的'SYBASE的完整安装路径';
下一步
5、设置数据库服务器名 和数据库名称???
Microsoft SQL Server:192.168.0.111
Microsoft SQL 数据库:msdb
服务器名称或者ip地址,数据库名字
6、继续安装:
\\192.168.0.8\e$\数据工具\oracle9.2\ORANT920\ORA92_2\NT\I386\stage
\\192.168.0.8\e$\数据工具\oracle9.2\ORANT920\ORA92_3\NT\I386\stage
7、安装完成:
此时,oracle安装主目录下有了'tg4msql'目录
C:\oracle\ora92\tg4msql
设置环境参数,创建dblink:
1、C:\oracle\ora92\tg4msql\admin下的inittg4msql.ora文件
文件内容:
# This is a sample agent init file that contains the HS parameters that are
# needed for the Transparent Gateway for SQL Server
5、重新启动服务:
在window的开始的运行中执行:
net stop OracleOraHome92TNSListener
net stop OracleServiceORADEMO
net start OracleOraHome92TNSListener
net start OracleServiceORADEMO
--drop DATABASE LINK link_zhaozhenlong;
CREATE DATABASE LINK link_zhaozhenlong CONNECT TO "sa" IDENTIFIED BY "xxb" USING 'zzl_sql200';
说明:ms sql server的用户名和密码必须小写,而且要加双引号,
否则会报如下错误:
错误信息:
ORA-28500: connection from ORACLE to a non-Oracle system returned this messsage:
[Transparent gateway from MSSQL][Microsoft][ODBC SQL Server Driver][SQL Server]??
'sa'????? (SQL State:28000; SQL Code: 18456)
ORA-02063: preceding 2 lines from LINK_ZZL
错误原因:
在CREATE DATABASE LINK LINK_ZZL的连接字符串中,ms sql server的用户名和密码必须小写,而且要加双引号
7、在pl/sql中执行:
select * from sysobjects@link_zhaozhenlong where rownum <=5;
结果如下:
访问dblink时说明:
这是基于网关的方式,因此不能在断开网络的情况下本地的oracle连接本地的ms sql server
否则会报如下错误:
ORA-28545: error diagnosed by Net8 when connecting to an agent
NCRO: Failed to make RSLV connection
ORA-02063: preceding 2 lines from LINK_ZZL