使用透明网关实现oracle访问sqlserver

使用透明网关实现oracle访问sqlserver

在项目上有跨库访问异构数据库的需求,通常是运行在oracle上的his系统,访问运行在sql server上的lis等系统,异构数据库的跨库访问需要使用透明网关。以下介绍透明网关gateway的安装和配置。

复制粘贴的时候图片都裂开了,懒的一个个上传了,文档获取地址:https://download.csdn.net/download/qq_36815190/87473980

gateway安装

首先是需要gateway的安装包,windows平台的安装包win32_11gR2_gateways.zip,linux平台的安装包为p13390677_112040_Linux-x86-64_5of7.zip,linux系统安装透明网关需要图形化桌面(静默安装容易出错)。各平台的安装方式大同小异,windows上的相对简单。

1、解压后的目录,打开setup.exe,弹出安装界面。Linux则需要运行./ runInstaller弹出图形界面。

2、指定HOME名称和路径(如果机器上没有oracle一般不需要修改,有oracle或者其他oracle产品可能会提示重复,需要修改名称和路径)

3、在安装过程中需要选择for sql server的选项

4、输入sqlserver的数据库信息(一般输入ip地址,防止没有dns解析,sqlserver的数据库名称,有的版本还需要输入端口号,一般sqlserver的默认端口是1433)

5、检查安装信息后就可以安装了

6、安装过程(在linux平台中,会弹出对话窗口,需要使用root执行两个脚本,执行完成后再回到图形界面确认就可以了)

7、安装完成会弹出配置监听的窗口(可以配置,也可以取消后后面手动配置,或者对已有oracle服务的机器可以使用oracle的监听程序)

8、开始配置监听

指定监听名称(一般默认,除非已存在同名监听或者需要更改其他监听名称)

选择协议

配置端口号(一般默认是1521,特别注意如果存已在1521端口,需要指定其他端口创建监听。)

是否还需要配置一个监听

提示监听配置完成

是否配置其他的命名方法

监听配置完成

gateway配置

一个ORACLE如果配置多个透明网关信息,则不需要安装多次网关软件,只需要安装一次,然后配置多个$ORACLE_HOME/dg4msql/admin/init网关SID.ora文件并新增多个静态监听和tns指向网关SID即可,Sqlserver用户名和密码只在oracle创建dblink时用得上。

首先修改$ORACLE_HOME/dg4msql/admin/下的配置文件,默认的配置文件是initdg4msql.ora。内容为前面安装的时候指定的信息。包含ip地址、(端口)、数据库名称。

文件内容如下:

然后修改监听文件$ORACLE_HOME/network/admin/listener.ora,配置静态监听,如果各项配置都是默认的话,可以参考$ORACLE_HOME/dg4msql/admin/目录里listener.ora.sample样例文件内容。监听修改完成后需要重启一下。

最后配置$ORACLE_HOME/network/admin/tnsnames.ora文件,并使用tnsping命令测试是否可以通。tnsnames.ora文件也可以参考$ORACLE_HOME/dg4msql/admin/目录里的tnsnames.ora.sample的样例文件,因为是异构的数据库所以需要加上HS=ok的参数,注意所有的host都最好改正为对应的ip地址,否则可能存在解析问题。

透明网关就配置好了,接下来需要使用透明网关创建dblink访问sqlserver。

创建dblink

透明网关配置好了,就可以在oracle平台的his库上创建dblink就可以访问sqlserver的lis数据库了。需要使用可以访问lis数据库的账号和密码,这里为了方便创建了一个叫rmlis6的dblink,访问lis的用户名密码都是LZHIS。

create public database link rmlis6

connect toLZHIS identified by LZHIS

using'(DESCRIPTION =

(ADDRESS =(PROTOCOL = TCP)(HOST =192.168.1.200)(PORT = 1521))

(CONNECT_DATA=(SID=dg4msql))

(HS=OK)

)';

然后使用dblink访问lis数据库的表,如果没有报错并且返回结果则测试访问成功。

select count(*) from l_testdescribe@rmlis6;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值