oracle 配置DBlink 链接mysql库
一,环境配置与准备、简介
\ | oracle | mysql |
主机名 | oracle01 | mysqlre1 |
IP | 192.168.0.10 | 192.168.0.187 |
本文章是oracle通过dblink连接mysql
二,安装基础环境
01,透明网关、ODBC
默认安装oracle数据库的时候,会配置安装好这个,当然有的还是会没有安装的,验证是否安装:
在oracle环境下:
[oracle@oracle01 ~]$ cd $ORACLE_HOME/hs/
这个就代表安装成功了。
如果没有的话:
访问网站:https://www.oracle.com/downloads/
我的是11G然后进去,然后下载数据库文件来下载gatways软件,具体还是百度吧,我有这个,------,不懂联系我
02,ODBC-mysql安装
官网下载地址:https://dev.mysql.com/downloads/connector/odbc/
rpm 下载地址:https://dev.mysql.com/get/Downloads/Connector-ODBC/8.0/mysql-connector-odbc-8.0.11-1.el6.x86_64.rpm
我直接下载rpm的。
安装:
安装基础安装包:
yum install unixODBC*
[root@oracle01 ~]# yum install unixODBC*
Loaded plugins: fastestmirror, langpacks
base | 3.6 kB ::
epel | 5.3 kB ::
extras | 2.9 kB ::
updates | 2.9 kB ::
zabbix | 2.9 kB ::
zabbix-non-supported | B ::
(/): base//x86_64/group_gz | kB ::
(/): epel/x86_64/group_gz | kB ::
(/): extras//x86_64/primary_db | kB ::
(/): epel/x86_64/updateinfo | 1.0 MB ::
(/): zabbix/x86_64/primary_db | kB ::
(/): base//x86_64/primary_db | 6.0 MB ::
(/): epel/x86_64/primary_db | 6.9 MB ::
(/): updates//x86_64/primary_db | 5.8 MB ::
Determining fastest mirrors
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Resolving Dependencies
--> Running transaction check
---> Package unixODBC.x86_64 :2.3.-.el7 will be updated
---> Package unixODBC.x86_64 :2.3.-.el7 will be an update
---> Package unixODBC-devel.x86_64 :2.3.-.el7 will be updated
---> Package unixODBC-devel.x86_64 :2.3.-.el7 will be an update
--> Finished Dependency Resolution Dependencies Resolved ========================================================================================
Package Arch Version Repository Size
========================================================================================
Updating:
unixODBC x86_64 2.3.-.el7 base k
unixODBC-devel x86_64 2.3.-.el7 base k Transaction Summary
========================================================================================
Upgrade Packages Total download size: k
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for base
(/): unixODBC-devel-2.3.-.el7.x86_64.rpm | kB ::
(/): unixODBC-2.3.-.el7.x86_64.rpm | kB ::
----------------------------------------------------------------------------------------
Total 1.0 MB/s | kB :
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
Updating : unixODBC-2.3.-.el7.x86_64 /
Updating : unixODBC-devel-2.3.-.el7.x86_64 /
Cleanup : unixODBC-devel-2.3.-.el7.x86_64 /
Cleanup : unixODBC-2.3.-.el7.x86_64 /
Verifying : unixODBC-devel-2.3.-.el7.x86_64 /
Verifying : unixODBC-2.3.-.el7.x86_64 /
Verifying : unixODBC-devel-2.3.-.el7.x86_64 /
Verifying : unixODBC-2.3.-.el7.x86_64 / Updated:
unixODBC.x86_64 :2.3.-.el7 unixODBC-devel.x86_64 :2.3.-.el7 Complete!
保证安装成功
03,mysql创建远程用户与远程数据库
mysql> show databases;
+-------------------------+
| Database |
+-------------------------+
| information_schema |
| mysql |
| #mysql50#mysql-bin-obar |
| performance_schema |
| sys |
+-------------------------+
rows in set (0.00 sec) mysql> create database test;
Query OK, row affected (0.00 sec)
mysql> use test
Database changed
mysql> create table test ( id int ,name varchar());
Query OK, rows affected (0.03 sec)
mysql> insert into test (id,name) values (,'nihao');
Query OK, row affected (0.00 sec)
mysql> grant all privileges on test.* to 'kingle'@'%' IDENTIFIED BY '123456';
Query OK, rows affected, warning (0.00 sec)
连接测试
[root@mysqlre1 ~]# mysql -ukingle -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.7.-log Source distribution Copyright (c) , , Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| test |
+--------------------+
rows in set (0.00 sec) mysql>
04,配置文件配置
在oracle数据库上配置odbc连接mysql的环境
[oracle@oracle01 hs]$ cat /etc/odbc.ini
[mysql_test]
Description = ODBC for MySQL
Driver = /usr/lib64/libmyodbc8w.so
Server = 192.168.0.187 ---mysql远程地址
Port = ----mysql 端口
User = kingle ----mysql连接用户
Password = ---mysql 连接密码
Database = test ---mysql连接数据库
[oracle@oracle01 hs]$ cat /etc/odbcinst.ini
[MySQL]
Description=ODBC for MySQL
Driver=/usr/lib/libmyodbc5.so
Setup=/usr/lib/libodbcmyS.so
Driver64=/usr/lib64/libmyodbc5.so
Setup64=/usr/lib64/libodbcmyS.so
FileUsage=
UsageCount=
05,配置连接监听地址
[oracle@oracle01 admin]$ cd $ORACLE_HOME/network/admin
[oracle@oracle01 admin]$ pwd
/u01/app/oracle/product/11.2./db_1/network/admin
[oracle@oracle01 admin]$ cat listener.ora SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle/product/11.2./db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = oracle01)
(SID_NAME = oracle01)
(ORACLE_HOME = /u01/app/oracle/product/11.2./db_1)
)
(SID_DESC = ##主要添加这一段,前面的默认是oracle的,这一段才是mysql的
(SID_NAME = mysql_test) ##给需要链接的mysql配置一个名字,这个后续连接的时候需要用上其他的默认看自己主机情况修改
(ORACLE_HOME = /u01/app/oracle/product/11.2./db_1)
(PROGRAM = dg4odbc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = ))
)
)
[oracle@oracle01 admin]$ cat tnsnames.ora
mysql_test= ---链接名字
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = ))
)
(CONNECT_DATA =
(SERVICE_NAME= mysql_test) ---连接实例名,与listence那个对应
)
(HS = OK)
)
[oracle@oracle01 admin]$
重启监听
[oracle@oracle01 db_1]$ lsnrctl stop
[oracle@oracle01 db_1]$ lsnrctl start
测试连接
[oracle@oracle01 admin]$ tnsping mysql_test TNS Ping Utility for Linux: Version 11.2.0.4. - Production on -DEC- :: Copyright (c) , , Oracle. All rights reserved. Used parameter files: Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = ))) (CONNECT_DATA = (SERVICE_NAME= mysql_test)) (HS = OK))
OK ( msec)
06,连接测试
oracle数据库上链接mysql测试
发现成功了,
07,配置initdg4odbc.ora
进入oracle_home 目录下找到hs\admin目录中initdg4odbc.ora文件并复制一份。然后修改复制文件。把文件名称改为init+刚刚配置数据源名称(本实例为mysql_test).ora
[oracle@oracle01 admin]$ pwd
/u01/app/oracle/product/11.2./db_1/hs/admin
[oracle@oracle01 admin]$ cat initmysql_test.ora
HS_FDS_CONNECT_INFO = mysql_test
HS_FDS_TRACE_LEVEL = on
HS_FDS_SHAREABLE_NAME = libodbc.so
HS_LANGUAGE = AMERICAN_AMERICA.UTF8
HS_NLS_NCHAR = UCS2
[oracle@oracle01 admin]$
HS_FDS_TRACE_LEVEL =on 这里最好设置on 网上一般将都是设置为off,为了查看错误日志,最好改为on,日志存在 $ORACLE_HOME/hs/log 下面。
同样这行HS_FDS_SHAREABLE_NAME=libodbc.so 一定不能少,不然后面会报错
ORA-28500: connection from ORACLE to a non-Oracle system returned this message。
08,创建dblink
create public database link mysql_test connect to "kingle" identified by "123456" using 'mysql_test'; create public database link mysql_test (创建的link名字可以自己写)connect to "kingle"(需要链接mysql的用户名) identified by "123456"(需要连接的密码) using 'mysql_test'(使用的监听,就是tns配置的那个名字);
连接成功
查看成功
oracle 配置DBlink 链接mysql库的更多相关文章
- oracle通过dblink连接mysql配置详解(全Windows下)
关于oracle通过dblink连接mysql,经过了两周的空闲时间研究学习,终于配置好了,真是不容易啊,仔细想想的话,其实也没花多长时间,就是刚开始走了一段弯路,所以把这次的经验分享出来,让大家少走 ...
- Tools下的mdscongiguer 文件中 43行 oracle 配置 发现需要连接库 -lclntsh libclntsh.so 库是个什么东西呢?
Tools下的mdscongiguer 文件中 43行 oracle 配置 发现需要连接库 -lclntsh libclntsh.so 库是个什么东西呢? 分想一个知乎网 ...
- Ubuntu中部署Django项目的配置与链接MySQL
Django的简介 MVT模式的介绍创建项目的虚拟环境 本次使用的是pip安装 一.更新 sudo apt update 二.安装pip sudo apt install python3-pip 三. ...
- [Oracle, MySQL] Oracle通过dblink连接MySQL
http://blog.csdn.net/dbanote/article/details/10488581 版权声明:本文为博主原创文章,未经博主允许不得转载. 业务上有这么一个需求,需要把Oracl ...
- oracle通过DBlink连接mysql(MariaDB)
1.安装先装 mysql-connector-odbc(或 mariadb-connector-odbc )和unixODBChttps://downloads.mariadb.org/mariadb ...
- Oracle通过dblink连接MySQL
需要把MySQL的一些数据同步到Oracle,用ETL工具太麻烦了,通过参考官方文档实现了oracle to mysql dblink.每次修改配置后,需要重启监听才能生效,或者 reload一下,确 ...
- 配置EF链接 MySql 的方法
材料: 1.MySQL for Visual Studio 1.2.4.msi 下载:http://dev.mysql.com/downloads/windows/visualstudio/ 2.my ...
- Web 应用之数据库的配置 与链接 Mysql
source 绝对路径.sql(绝对路径是对应数据库版本包下的) source时是有先后顺序的必须是create 在insert 在 下面是链接,上面是把数据导入到数据库中,数据也可以自己写进去. 配 ...
- 在oracle配置mysql数据库的dblink
本文介绍如何在oracle配置mysql数据库的dblink:虽然dblink使用很占资源:俗称“性能杀手”.但有些场景不得不使用它.例如公司使用数据库是oracle:可能其他部门或者CP合作公司使用 ...
随机推荐
- CodeForces 463D DP
Gargari got bored to play with the bishops and now, after solving the problem about them, he is tryi ...
- virsh 查看信息
获取域网络接口信息 virsh domiflist debian8 获取vcpu信息 virsh vcpuinfo debian8 设定内存最大内存 virsh setmaxmem debian8 9 ...
- 解决基于TypeScript 的 RN项目相对路径引入组件的问题
一.前言 在开发RN项目时,经常会要使用这样的方式(../../../)来引入组件,感觉非常繁琐,如果项目结构层级比较多,引入的头部更加分不清. 那有没有一种方案和vue项目一样,经过配置后简写路径, ...
- linq 获取不重复数据,重复数据 var unique = arr.GroupBy(o => o).Where(g => g.Count() == 1) .Select(g => g.ElementAt(0));
static void Main(string[] args) { int[] arr = { 1, 3, 3, 3, 3, 4, 5, 4, 5, 8, 9, 3 }; //不重复 var uniq ...
- c# "As" 与 "Is"效率 (原发布csdn 2017-10-07 11:49:18)
十一长假就要过去了,今年假期没有回家,一个人闲着无聊就在看C#语言规范5.0中文版.昨天看了 is运算符和 as运算符,平时项目中也有用到这两种符号,对于其效率也没有进行比较过,趁着假期有空,先看下效 ...
- c# sqlserver 删除大批量数据超时
我做的项目有个功能需要进行批量删除,删除的数据量有4.5W条数据. 通过下面的sql语句删除这么多数据,直接导致结果超时,无法删除数据. ,,,......) 我查了一些资料,可能找的不全,找到了一个 ...
- CentOS7下配置防火墙放过Keepalived
Keepalived是一个轻量级的HA集群解决方案,但开启防火墙后各节点无法感知其它节点的状态,各自都绑定了虚拟IP.网上很多文章讲要配置防火墙放过tcp/112,在CentOS7下是无效的,正确的做 ...
- jmeter入门操作 = 录制
没安装工具的朋友请先看:https://www.cnblogs.com/cainiaoxiansheng/p/11007754.html 软件装好,功能了解好,那么就开始进入正题,先来一波录制 不要鄙 ...
- jenkins19年最新最管用的汉化
今天准备学学jenkins ,官方下载了一个最新版本,发现是英文版,网上找个许多汉化方式,几乎都是一种,下载插件 :Locale plugin ....很尴尬,下载完了还是没有汉化 ,是不是jenki ...
- 微信小程序使用函数防抖解决重复点击消耗性能问题
wxml: <view bindtap="doubleTap" bindtouchstart="touchStart" bindtouchend=&quo ...