Oracle 连接MySql 的配置

可以结合参考

Oracle 通过网关连接MySql的配置_oracle21c 网关 配置mysql-CSDN博客 来看本文档

一、说明

1、服务器现状

服务器 A :win 64 ,IP : 192.X.X.X ,已经安装ORACLE 11g 和 client 11g。

实例orcl,用户test,密码123456

服务器B:win 32位  ,192.168.X,X,装有mysql。

数据库 test,用户 test1,密码123456

2、需求

在 A上通过安装配置,实现 plsql 可以通过dblink 连接B的mysql,实现 在oracle中对mysql的数据 进行 增删改查等操作。

3、以下都是在A服务器上进行的操作。

4、网上资料说需要安装 oracle getaway 透明网关,但是现在一般在安装ORACLE 11g数据库都是带有的,不需要另外进行安装,这里只要安装dg4odbc驱动,进行配置即可实现。

5、原理简单说明:使用 oracle网关来通过ODBC连接MySQL。 ( MySQL是一个ODBC )

二、操作

1、安装DG4ODBC驱动

A是64位,下载64位的驱动,我使用的 是

 (这个可以复制下来进行安装),可以自行下载其他版本 。

没有安装前如下图,没有对应mysql的驱动。

win8 64 (C:\Windows\System32\odbcad32.exe)

2、解压后,安装 mysql-connector-odbc-commercial-5.3.3-winx64.msi 文件,默认安装即可

安装过程有报错的,可以从软件管家安装 微软常用运行库合集 64位_2018.7.30

3、安装后,可以查看已经有了驱动

win8 64 (C:\Windows\System32\odbcad32.exe)

在Oracle服务器上,cmd窗口中执行命令(dg4odbc),表示已经安装成功

4、odbc 的配置

选择,系统DSN--添加—mysql odbc 5.3 ANSI Driver。(参考上图)

进行对应配置 名称   mysqlodbc  

点击 按钮  Test,测试 是否连接成功。

5、透明网关的配置

在" ..\product\11.2.0\dbhome_1\hs\admin"目录下,默认存在名为"initdg4odbc.ora"的文件,复制"initdg4odbc.ora"文件,新文件名称改为"initmysqlodbc.ora",

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

最终我配置是

HS_FDS_CONNECT_INFO = mysqlodbc

HS_FDS_TRACE_LEVEL = off

6、配置网关监听listener.ora

…\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora

加上这段

#以下是透明网关的设置

    (SID_DESC =

      (SID_NAME = mysqlodbc )  # 对应以上的配置名

      (ORACLE_HOME =D:\app\dell\product\11.2.0\dbhome_1)

      (PROGRAM = dg4odbc ) # 固定

)

7、配置TNS

打开 " ….\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora"文件

这个服务名 ,是下面创建link使用的 服务

mysqlodbc =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST =  106-pc)(PORT = 1521))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = mysqlodbc) # 这个是上面的SID_NAME = mysqlodbc

    )

    (HS = OK)

  )

8、重启监听服务

命令重启监听

lsnrctl stop

lsnrctl start

或者手动去 停止\启动

9、配置DBLINK

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

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

 我这里使用plsql来执行

create database link mysqlodbc   connect to "test1"

    identified by "123456" using 'mysqlodbc';

具体意思如下:

create public database link mysqlodbc connect to "test1" identified by "123456"
using '(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP) (HOST = localhost) (PORT =1521) )
(CONNECT_DATA = (SID = mysqlodbc ))
(HS=OK))';

测试查询mysql里的tbopcs表: select  * from tbopcs@mysqlodbc  ;

注意:最后测试时,将监听和oracle service 都重启下测试,看配置是否影响到plsql 对oracle 原来的连接

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
是的,Oracle数据库可以连接MySQL数据库。你可以使用Oracle的Database Gateway功能来实现这个连接。Database Gateway是Oracle提供的一个工具,它允许你在Oracle数据库中访问其他数据库系统的数据,包括MySQL。 要连接OracleMySQL,你需要安装和配置Oracle Database Gateway for ODBC(DG4ODBC)。这个Gateway使用ODBC(Open Database Connectivity)来连接不同的数据库系统。 安装和配置DG4ODBC需要一些步骤,在这里我简单列出一些关键步骤: 1. 在Oracle数据库服务器上安装ODBC驱动程序。你可以从MySQL官方网站上下载并安装MySQL ODBC驱动程序。 2. 配置ODBC数据源。在Windows系统上,你可以使用ODBC数据源管理器来配置数据源。在Linux系统上,你可以编辑odbc.ini文件来配置数据源。 3. 在Oracle数据库服务器上安装和配置DG4ODBC。这个过程涉及到下载和解压缩DG4ODBC软件包,然后运行安装脚本来完成安装和配置。 4. 在Oracle数据库中创建一个数据库链接对象,它将连接MySQL数据库。你可以使用CREATE DATABASE LINK语句来创建链接对象,并指定MySQL数据库连接信息。 一旦完成了这些步骤,你就可以在Oracle数据库中使用链接对象来访问MySQL数据库的数据了。你可以使用标准的SQL语句来查询和操作MySQL数据,并将结果返回到Oracle数据库中。 需要注意的是,连接OracleMySQL的性能可能受到网络延迟和数据转换的影响。另外,你还需要确保OracleMySQL数据库之间的数据类型和功能兼容性。在进行连接之前,最好先进行一些测试和验证来确保连接的可靠性和稳定性。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值