绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
oracle通过透明网关连接mysql的配置
2019-09-06 14:40:28

前言:数据库多了,各种数据库的数据抽取肯定是会有的,遇到到多的应该是oracle从sqlserver抽取数据,oracle从mysql抽取数据的情况会比较少,但是还是遇到了。今天把整个配置的过程整理一下,希望能帮助到各位;

 

环境说明:ORACLE数据库11.2.0.3   操作系统:windows2008_64位

       MYSQL 5.5          操作系统centos 5.9

(注:以下操作都是在ORACLE数据库服务器上面进行的操作)

一、前提条件

Oracle DB必须已经安装Oracle Data Gateway,在Oracle DB 11g中,默认随数据库一起安装。

检查DG4ODBC驱动是否已经安装的方法如下:

在Oracle服务器上,cmd窗口中执行命令(dg4odbc),若有安装则显示如下信息:

C:\Users\Administrator>dg4odbc


 

二、安装步骤

1、准备工作

  1.1  下载MySQL ODBC驱动

官方的下载地址:https://edelivery.oracle.com/EPD/Search/handle_go

出于方便这边已经帮大家下载完成:http://pan.baidu.com/s/1yAM54

  1.2   配置MySQL ODBC DSN

按照以上步骤进行配置,完成后单击"Test"按钮,查看是否能够成功连接,单击"OK"按钮,再单击"确定"按钮退出ODBC数据源管理。


2、透明网关的配置

2.1   在"ORACLE_HOME\hs\admin"目录下,默认存在名为"initdg4odbc.ora"的文件,复制"initdg4odbc.ora"文件,新文件名称改为"initSIDMASDB.ora",

【每个使用DG4ODBC的实例,都必须单独一个"init*.ora"文件,文件命名规则:init+<网关sid>+.ora】

2.2 initdg4odbc.ora文件参数的说明

HS_FDS_CONNECT_INFO = ODBC数据源管理中的DSN名称【本实验为E3】

HS_FDS_TRACE_LEVEL = OFF 【追踪级别参数,出于性能影响一般不配置或者配置为"OFF",若遇到网关问题需要跟踪日志,则配置为"Debug",跟踪日志文件存放在"ORACLE_HOME\hs\trace"目录下】

2.3 配置网关监听

 网关监听可配置的参数如下:SID_NAME  网关的SID

 ORACLE_HOME目录

 PROGRAM指定监听服务响应ODBC连接请求的可执行程序

请参考如下或者透明网关的配置:

# listener.ora Network Configuration File: C:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora

# Generated by Oracle configuration tools.

 

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = CLRExtProc)

      (ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)

      (PROGRAM = extproc)

      (ENVS = "EXTPROC_DLLS=ONLY:C:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")

    )

(SID_DESC =

(SID_NAME = E3)

(ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)

(PROGRAM =dg4odbc)

    )

  )

 

2.4  重启监听服务

在cmd下面运行

lsnrctl stoplsnrctl start

 

2.5 配置TNS

打开 "ORACLE_HOME\network\admin\tnsnames.ora"文件

需要配置的参数如下:

connect_descriptor:填写自定义的TNS连接名称

ADDRESS:填写透明网关的IP地址和端口

SID:指定连接网关的SID

HS :指定连接的是非ORACLE数据库

connect_descriptor=

    (DESCRIPTION=

       (ADDRESS=

          (PROTOCOL=TCP)

          (HOST=host_name)

          (PORT=port_number)

       )

       (CONNECT_DATA=

          (SID=gateway_sid))

       (HS=OK))

 

本例子配置如下:

E3 =

  (DESCRIPTION =

    (ADDRESS_LIST =

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

    )

    (CONNECT_DATA =

      (SERVICE_NAME = e3)

    )

    (HS = OK)

  )

 

2.6 配置DBLINK

以sqlplus、PLSQL Developer或TOAD连接到OracleDB,执行以下DDL语句创建DBLink

【在"create database link"语句中,用户名和密码,建议以双引号括起来,避免Oracle在大小写上做自动转换】

create database link E3

  connect to "2222"

    identified by "2222" using 'E3';

 

2.7测试结果的配置

用sqlplus在服务器上面执行语句,返回如下值表明配置成功

SQL> select * from dual@e3;

D

-

X


分享好友

分享这个小栈给你的朋友们,一起进步吧。

Oracle数据库技术集
创建时间:2020-05-15 15:15:11
菜鸟教程
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • 栈栈
    专家
戳我,来吐槽~