Oracle 11g透明网关连接Sqlserver
1、扯扯前奏 记的2017年的五一假期,在享受假期的同时突发奇想,Oracle中怎么能查到SQL Server的数据,当时也百度了好多,搞了应该也有一天的时间吧,安装了Oracle透明网关以后却没能连上SQL Server,后来也就搁浅了,现在是2018年12月4日,在这个项目了支援了快两个月了,感觉可能会用到这块,今天就凑时间了测试了下;不得不说今天的运气还是挺好的。 2、不得不说的来龙去脉 oracle 透明网关是oracle连接异构数据库提供的一种技术。通过Gateways,可以在Oracle里透明的访问其他不同的数据库,如SQL Server,DB2,Sybase等等,就像远程Oracle数据库一样。 3、按图就办 备注:当时安装时没有截图,图片是在网上找的,不过内容是对的。 3.1 解压透明网关的压缩包,点击setup.exe安装 3.2 安装目录选择和ORACLE一致 3.3 选择组件,因为要链接到SQL SERVER 3.4 填写SQL SERVER的主机名和数据库名称 3.5 开始安装 3.6 安装完成后就退出了,因为监听要手动配置。 4、配置透明网关 4.1 在D:appproduct11.2.0tg_2dg4msqladmin目录下,个人安装的路径,因人而异。这个目录下可以看到以下initdg4msql.ora文件,上面在安装透明网关时有配置链接SQL SERVER数据的地址和数据库名称,在这里都可以体现。 HS_FDS_CONNECT_INFO=127.0.0.1:1433//Test HS_FDS_TRACE_LEVEL=OFF HS_FDS_RECOVERY_ACCOUNT=RECOVER HS_FDS_RECOVERY_PWD=RECOVER 检查一下HS_FDS_CONNECT_INFO是否是我们想要链接的地址,格式为:目标数据库的IP地址:端口//数据库名。SQL SERVER的默认端口是1433。这个文件名也比较有讲究。格式为initSID.ora。现在这个文件名是initdg4msql.ora。 4.2 配置透明网关的监听,D:appproduct11.2.0tg_2NETWORKADMINlistener.ora LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1522)) ) ) SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (SID_NAME=dg4msql) (ORACLE_HOME=D:appproduct11.2.0tg_2) (PROGRAM=dg4msql) ) ) ADR_BASE_LISTENER = D:appproduct11.2.0tg_2 这里需要注意的主要是一下几点: 4.3 启动透明网关的监听 在命令行执行lsnrctl start,或者直接去服务那启动监听OracleOraGtw11g_home1TNSListener,这个服务名根据具体而定,每人可能不太一样。服务启动好了就OK。 4.4 配置tns信息,来到D:appAdministratorHomeproduct11.2.0dbhome_1NETWORKADMIN #透明网关 dg4msql = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1522)) ) (CONNECT_DATA = (sid = dg4msql) ) (HS = OK) ) 4.5 测试tns 重启oracle监听服务和透明网关服务后在命令行输入:tnsping dg4msql。 4.6 建立DBLINK create database link LOCALSQL connect to "sa" identified by "qweasd" using ‘( DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1433)) (CONNECT_DATA = ( SID = Test ) ) (HS=OK ))‘; 4.7?查询实例
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |