oracle通过透明网关连接mysql的配置

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 前言:数据库多了,各种数据库的数据抽取肯定是会有的,遇到最到最多的应该是oracle从sqlserver抽取数据,oracle从mysql抽取数据的情况会比较少,但是还是遇到了。

前言:数据库多了,各种数据库的数据抽取肯定是会有的,遇到最到最多的应该是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++.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

 

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

本文作者:JOHN

ORACLE技术博客:ORACLE 猎人笔记               数据库技术群:367875324 (请备注ORACLE管理 )  

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
4天前
|
SQL 关系型数据库 MySQL
seatunnel配置mysql2hive
本文介绍了SeaTunnel的安装与使用教程,涵盖从安装、配置到数据同步的全过程。主要内容包括: 1. **SeaTunnel安装**:详细描述了下载、解压及配置连接器等步骤。 2. **模拟数据到Hive (fake2hive)**:通过编辑测试脚本,将模拟数据写入Hive表。 3. **MySQL到控制台 (mysql2console)**:创建配置文件并执行命令,将MySQL数据输出到控制台。 4. **MySQL到Hive (mysql2hive)**:创建Hive表,配置并启动同步任务,支持单表和多表同步。
72 15
|
26天前
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
130 25
|
1月前
|
关系型数据库 MySQL 数据库连接
Unity连接Mysql数据库 增 删 改 查
在 Unity 中连接 MySQL 数据库,需使用 MySQL Connector/NET 作为数据库连接驱动,通过提供服务器地址、端口、用户名和密码等信息建立 TCP/IP 连接。代码示例展示了如何创建连接对象并执行增删改查操作,确保数据交互的实现。测试代码中,通过 `MySqlConnection` 类连接数据库,并使用 `MySqlCommand` 执行 SQL 语句,实现数据的查询、插入、删除和更新功能。
|
2月前
|
SQL Oracle 关系型数据库
如何在 Oracle 中配置和使用 SQL Profiles 来优化查询性能?
在 Oracle 数据库中,SQL Profiles 是优化查询性能的工具,通过提供额外统计信息帮助生成更有效的执行计划。配置和使用步骤包括:1. 启用自动 SQL 调优;2. 手动创建 SQL Profile,涉及收集、执行调优任务、查看报告及应用建议;3. 验证效果;4. 使用 `DBA_SQL_PROFILES` 视图管理 Profile。
|
4月前
|
关系型数据库 MySQL 网络安全
DBeaver连接MySQL提示Access denied for user ‘‘@‘ip‘ (using password: YES)
“Access denied for user ''@'ip' (using password: YES)”错误通常与MySQL用户权限配置或网络设置有关。通过检查并正确配置用户名和密码、用户权限、MySQL配置文件及防火墙设置,可以有效解决此问题。希望本文能帮助您成功连接MySQL数据库。
455 4
|
4月前
|
安全 关系型数据库 MySQL
【赵渝强老师】MySQL的连接方式
本文介绍了MySQL数据库服务器启动后的三种连接方式:本地连接、远程连接和安全连接。详细步骤包括使用root用户登录、修改密码、创建新用户、授权及配置SSL等。并附有视频讲解,帮助读者更好地理解和操作。
748 1
|
4月前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
4月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
393 2
|
5月前
|
SQL Java 关系型数据库
java连接mysql查询数据(基础版,无框架)
【10月更文挑战第12天】该示例展示了如何使用Java通过JDBC连接MySQL数据库并查询数据。首先在项目中引入`mysql-connector-java`依赖,然后通过`JdbcUtil`类中的`main`方法实现数据库连接、执行SQL查询及结果处理,最后关闭相关资源。
472 6

推荐镜像

更多