项目开发中,需要调用SQLServer2008中某张表,如果用ETL工具,感觉没有必要,就想通过透明网关,创建dblink链接去读取数据。

第一步:下载透明网关文件win32_11gR2_gateways,并安装,安装步骤这边就省略了,装不好的问百度。

第二步:配置透明网关

                安装过程中,将透明网关与Oracle数据文件安装在同台服务器上了,在这大家要注意下:

                1)Oracle安装时监听器默认的端口是1521,透明网关监听器在安装时默认端口也是1521,这就导致端口冲突,报ORA-28545: 连接代理时 Net8 诊断到错误Unable to retrieve text of NETWORK/NCR message 65535ORA-02063: 紧接着 2 lines (起自 dg4msql)。将透明网关监听端口1521改为1522就OK了。

                2)透明网关文件配置,需要用到文件为dg4msql(参数文件)和network(网络监听配置文件)

                       

                       dg4msql:参数文文件

                       

                      initdg4msql.ora参数文件,里面配置数据库配置信息,此文件命名格式为:init<sid>.ora,此示例采用默认文件名

                    

                     数据库配置路径采用:http://IP//数据库名称,有的数据库可能不识别localhost,只能用.代替,不然会报:ORA-28500: 连接 ORACLE 到非 Oracle 系统时返回此信息: 
[Oracle][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝 {08001,NativeErr = 17}[Oracle][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()). {01000,NativeErr = 53}[Oracle][ODBC SQL Server Driver]无效的连接字符串属性 {01S00}
ORA-02063: 紧接着 2 lines (起自 DG4MSQL)

                     listener.ora.sample:透明网关监听器配置模板

                    

                    tnsnames.ora.sample:Oracle数据库tns配置模板

                    

                    network:文件

                    需要在listener.ora配置信息

                    

第三步:重启透明网关监听器

                  

   点击 LSNRCTL.exe文件,进入下面界面:

                   

第四步:Oracle数据文件配置

                找到Oracle tns配置文件,进行一下配置:

                

第五步:创建dblink 语法如下:

                

[sql]  view plain  copy
  1. create database link dg4msql --dblink名称  
  2. connect to sa --用户名  
  3. identified by "scsoft"  --密码,用引号括起来  
  4. using 'dg4msql'--服务名称  

第六步:数据查询,语法如下:

[sql]  view plain  copy
  1. select * from 表明@dg4msql;  
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐