在oracle配置mysql数据库的dblink
本文介绍如何在oracle配置mysql数据库的dblink;虽然dblink使用很占资源;俗称“性能杀手”。但有些场景不得不使用它。例如公司使用数据库是oracle;可能其他部门或者CP合作公司使用的数据库是mysql。若需要数据对接。
步骤
1. 下载和安装 [ODBC Driver Manager]
2. 下载和安装 [MySQL Connector/ODBC driver]
3. 配置odbc.ini
4. 配置环境变量
5. 配置 tnsnames.ora
6. 配置 listener.ora
7. 配置监听的初始化文件
8. 创建dblink
1. 下载和安装 [ODBC Driver Manager]
#创建一个目录用于放置驱动包环境
[oracle@oracle169 ~]$ cd $ORACLE_BASE
[oracle@oracle169 app]$ mkdir tools
[oracle@oracle169 app]$ cd tools
#下载和安装 unixODBC-2.2.14-linux-x86-64.tar.gz ;并上传到tools目录下。并解压
#下载地址https://sourceforge.net/projects/unixodbc/files/?source=navbar
[oracle@oracle169 tools]$ tar -zxvf unixODBC-2.2.14-linux-x86-64.tar.gz
[oracle@oracle169 tools]$ mkdir unixodbc-2.2.14
[oracle@oracle169 tools]$ mv usr/local/* unixodbc-2.2.14/
[oracle@oracle169 tools]$ rm -rf usr/
2. 下载和安装 [MySQL Connector/ODBC driver]
#下载解压对应版本 mysql-connector-odbc-5.3.7-linux-el6-x86-64bit.tar.gz;本次linux环境是6.5
下载地址 https://dev.mysql.com/downloads/connector/odbc/
[oracle@oracle169 tools]$ tar -zxvf mysql-connector-odbc-5.3.7-linux-el6-x86-64bit.tar.gz
[oracle@oracle169 tools]$ mv mysql-connector-odbc-5.3.7-linux-el6-x86-64bit my5
3. 配置odbc.ini;
[oracle@oracle169 tools]$ vim odbc.ini
[testdb]
Driver = /u01/app/tools/my5/lib/libmyodbc5a.so
SERVER = #mysql服务器ip
PORT = #mysql数据库端口
USER = #mysql数据库用户名
PASSWORD = #mysql数据库密码
DATABASE = #mysql数据库
OPTION = 3
SOCKET =
4. 配置环境变量
在.bash_profile 后面添加下面
export PATH=/u01/app/tools/unixODBC-2.2.14/bin:$PATH
export LD_LIBRARY_PATH=/u01/app/tools/unixODBC-2.2.14/lib:$LD_LIBRARY_PATH
export ODBCINI=/u01/app/tools/odbc.ini
source .bash_profile之后;这个时候可以测试上面配置是否正确
执行 isql -v testdb
若出现这个;表示上面配置是OK的。
+---------------------------------------+
| Connected! |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
5. 配置 tnsnames.ora
在后面添加
testdb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SID = testdb))
(HS=OK)
)
)
6. 配置 listener.ora
#加入红色部分;并重启监听
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = testdb)
(ORACLE_HOME =/u01/app/oracle)
(PROGRAM = dg4odbc)
(ENVS=LD_LIBRARY_PATH=/u01/app/tools/unixODBC-2.2.14/lib)
)
)
7. 配置监听的初始化文件
[oracle@oracle169 tools]$ vim $ORACLE_HOME/hs/admin/inittestdb.ora
# This is a sample agent init file that contains the HS parameters that are
# needed for the Database Gateway for ODBC # HS init parameters HS_FDS_CONNECT_INFO = testdb
HS_FDS_FETCH_ROWS=100
HS_RPC_FETCH_SIZE=50000
HS_FDS_TRACE_LEVEL = off
HS_FDS_SHAREABLE_NAME = /u01/app/tools/unixODBC-2.2.14/lib/libodbc.so
HS_LANGUAGE=american_america.we8iso8859p1
HS_NLS_NCHAR=UCS2
#
# ODBC specific environment variables
#
set ODBCINI= /u01/app/tools/odbc.ini #
# Environment variables required for the non-Oracle system
#
#set <envvar>=<value>
8. 创建dblink
create public database link db_testdb connect to "mysql_user" identified by "password" using 'testdb';
在oracle配置mysql数据库的dblink的更多相关文章
- CentOS6.7下使用非root用户(普通用户)编译安装与配置mysql数据库并使用shell脚本定时任务方式实现mysql数据库服务随机自动启动
CentOS6.7下使用非root用户(普通用户)编译安装与配置mysql数据库并使用shell脚本定时任务方式实现mysql数据库服务随机自动启动1.关于mysql?MySQL是一个关系型数据库管理 ...
- 简单安装与配置mysql数据库(绿色版)
目录 绿色版下载 mysql绿色版(5.7版本的安装与配置) 绿色版下载: mysql官网下载地址:https://www.oracle.com/index.html mysql绿色版(5.7版本的安 ...
- 阿里云CentOs服务器 安装与配置mysql数据库
阿里云CentOs服务器 安装与配置mysql数据库 以上为Linux安装mysql数据库 Linux 安装mysql 数据库 一下为mysql 安装教程 Using username "r ...
- 配置MySQL数据库
一.配置MySQL数据库 1.解压绿色版mysql,如下图 二.安装服务 1.运行cmd(管理员版本,否则没有权限),如下图 2.运行命令mysqld –install安装服务,如下图: 如果不需要m ...
- 迅美VPS安装和配置MySQL数据库教程
MySQL相关教程与知识: 迅美VPS安装和配置MySQL数据库教程 navicat8管理MySQL教程-创建数据库和导入数据 navicat8管理MySQL教程-管理建立用户和分配 ...
- 原创教程:SpagoBI4.2汉化及配置Mysql数据库教程
SpagoBI4.2汉化及配置Mysql数据库教程 商务智能套件SpagoBI提供一个基于J2EE的框架用于管理BI对象如报表.OLAP分析.仪表盘.记分卡以及数据挖掘模型等的开源BI产品.它提供的B ...
- 【入门】Spring-Boot项目配置Mysql数据库
前言 前面参照SpringBoot官网,自动生成了简单项目点击打开链接 配置数据库和代码遇到的问题 问题1:cannot load driver class :com.mysql.jdbc.Drive ...
- django框架配置mysql数据库
django配置mysql数据库: 1.首先更改django项目文件中的settings.py的数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.d ...
- Windows平台安装配置mysql数据库
Windows平台安装配置mysql数据库 作者:Eric 微信:loveoracle11g 去下载mysql软件 https://www.mysql.com/downloads/ https://d ...
随机推荐
- PHP和MySQL实现消息队列
最近遇到一个批量发送短信的需求,短信接口是第三方提供的.刚开始想到,获取到手机号之后,循环调用接口发送不就可以了吗? 但很快发现问题:当短信数量很大时,不仅耗时,而且成功率很低. 于是想到,用PHP和 ...
- Python 类的多态的运用
#类的多态的运用 #汽车类 class Car(object): def move(self): print("move ...") #汽车商店类 class CarStore(o ...
- ErrorProvider控件使用
在Windows应用程序开发中,我们可以通过处理输入控件(如TextBox控件)的Validating事件,对用户的输入进行有效性验证,当用户输入不正确时,可以使用错误提示控件ErrorProvide ...
- Java HashSet和HashMap源码剖析
转自: Java HashSet和HashMap源码剖析 总体介绍 之所以把HashSet和HashMap放在一起讲解,是因为二者在Java里有着相同的实现,前者仅仅是对后者做了一层包装,也就是说Ha ...
- HashMap的最大容量为什么是2的30次方?
今天看HashMap的底层实现,发现HashMap的最大容量规定为: // 最大容量(必须是2的幂且小于2的30次方,传入容量过大将被这个值替换) static final int MAXIMUM_C ...
- android 系统广播
Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:00000099 EndFragment:00012731 String ADD_SHORTCUT_ ...
- Linux下硬链接与软链接
linux下的链接文件,尤其是软链接使用非常的频繁: 链分为硬链接(hard link)与软链接(symbolic link) 两种:关键在于inode: 硬链接: 当系统需要读取一个文件时,就会去读 ...
- C++编程基础练习
注:本文练习题均出自<Essential C++>第一章 练习1,1 从一个简单程序开始 #include<iostream> #include<string> u ...
- e787. 用JSpinner实现小时选择
// Create a calendar object and initialize to a particular hour if desired Calendar calendar = new G ...
- 深入理解Java虚拟机(一)
一.运行时数据区域 1.程序计数器: 当前线程执行字节码的行号指示器(通过改变计数器的值来选择下条需要执行的字节码指令) 每个线程有独立的程序计数器(线程私有,为了切换线程时能恢复到挣钱的执行位置 ...