mysql db link_oracle11G数据库db_link连接mysql配置(Windows下无需安装Gateway组件)
对于oralce db_link mysql数据库,从开始到写博客,花了2天时间,配置了2遍。第一遍网上找资料跟着配置,安装了Gateway for ODBC。第二遍把虚拟机系统重新做了,没有安装Gateway for ODBC,两次均成功。好了废话少说,进入正题。
一、系统环境
oracle客户端:win10系统,oralce client64位
oralce服务端:win10系统(虚拟机),oracle database64位
二、配置ODBC
检查oracle服务端是否有ODBC数据源驱动,因为我是64位系统
打开ODBC数据源
选择系统DSN,注意一定要选择系统DSN。
选择数据源驱动,若此处没有mysql odbc,则需下载obdc,地址为:http://pan.baidu.com/s/1dFeGUDr(此驱动来自于CSDN的莫弃c的博客。),安装了此ODBC驱动,则无需安装Gateway for oracle,因为安装Gateway for oracle,还要给Gateway配置,有点烦。
若安装ODBC报此错误
则需要安装Microsoft Visual C++。
下载地址: https://download.microsoft.com/download/3/2/2/3224B87F-CFA0-4E70-BDA3-3DE650EFEBA5/vcredist_x64.exe(64位的)
下载安装Microsoft Visual C++之后,再次安装mysql odbc,安装完成之后进行mysql odbc的配置
三、配置透明网关
在oralce服务端,找到安装目录,例如我的是E:\app\Administrator\product\11.2.0\dbhome_1
在此目录下找到hs\admin\initdg4odbc.ora复制一份,命名规则是:init+sid.ora,所以就是initmysqlodbc.ora
打开initmysqlodbc.ora文件,将默认的
HS_FDS_CONNECT_INFO =
HS_FDS_TRACE_LEVEL =
改为:
HS_FDS_CONNECT_INFO = mysqlodbc
HS_FDS_TRACE_LEVEL = off
然后返回到dbhome_1文件夹下,找到NETWORK\ADMIN\listener.ora
添加
(SID_DESC =
(SID_NAME = MYSQLODBC)
(ORACLE_HOME = E:\app\Administrator\product\11.2.0\dbhome_1)
(PROGRAM = dg4odbc) #注意dg4odbc不要改动
)
再打开tnsnames.ora
添加
MYSQLODBC =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = mysqlodbc)
)
(HS = OK)
)
然后重启监服务,可以在service.msc里重启,也可以使用命令
停止:lsnrctl stop ,
启动:lsnrctl start;
四、创建db_link并查询
create database link mysqlodbc connect to "root" identified by "密码" using 'mysqlodbc';--注意用户名密码双引号,using后面单引号。
五、进行查询
select * from "test"@mysqlodbc--注意oralce会自动将sql转换为大写,而mysql大小写是两张不同的表,所以在此要使用单引号以便在mysql中可以识别。
六、部分错误解决方案
1.ORA-28546: 连接初始化失败, 可能是 Net8 管理错误
解决方案1:检查initmysqlodbc.ora文件
查看HS_FDS_CONNECT_INFO = mysqlodbc中的mysqlodbc是否与自己在ODBC数据源中所起的名称是否一致。
解决方案2:检查自己是否没有重启监听服务
2.ORA-00942: 表或视图不存在:
解决方案:查询sql语句,mysql的表一定要带双引号,否则Mysql无法识别。
后记:第一次配置的时候走了不少弯路,所以写下此篇文章以便有需要的人少走一点弯路。感谢CSDN的莫弃c,因为我配置是按照他博客的文章进行配置的,因此我此篇文章.ora里面的东西与他的文章一模一样。
莫弃c大神文章地址:http://blog.csdn.net/qq_29311303/article/details/53148566
mysql db link_oracle11G数据库db_link连接mysql配置(Windows下无需安装Gateway组件)相关推荐
- java连接mysql 5.7数据库_javaJDBC连接mysql(5.7)数据库,一看就懂的详细例子
不多比比 直接上代码 package Demo; import java.sql.Connection; import java.sql.DriverManager; import java.sql. ...
- mysql跳过安全_Navicat连接MySQL数据库
前言: 在使用Gin架构搭建博客的时候,需要设计数据库,以及连接数据库.命令端口操控效率实在是太低且不好管理,这个时候使用Navicat就能轻松高效的使用数据库了. 步骤: 下载安装Navicat,M ...
- 数据库工具连接Mysql报Password authentication failed错误
最近项目需要用mysql数据库,同事把一个新安装的数据交给我使用,没想到一步一个坑,在此记录一下遇到的这个问题. 问题描述 使用navicat数据库工具连接mysql时,弹出了"Passwo ...
- java连接MySQL几种方法_Java连接MySQL数据库三种方法
好久没有更新博客了!今天利用周目时学习了一下数据库mysql.介绍一下数据库的三种连接方式! 开发工具:Myeclipse MySQL5.6 MySQL连接驱动:mysql-connector-jav ...
- mysql 遗失对主机的连接,MySQL远程连接丢失问题解决方法(Lost connection to MySQL server)...
MySQL远程连接丢失问题解决方法(Lost connection to MySQL server) 最近服务器很不稳定,于是重装了mysql 和php 服务,但是接着却遇到了很头疼的麻烦. 远程连接 ...
- wdcp mysql密码_WDCP提示无法连接mysql及创建站点提示mysql密码不正确
一.wdcp系统访问提示无法连接mysql 1.可能是mysql服务没启动,首先ssh登陆服务器,然后执行service mysqld restart重启mysql再访问试下,如果无法启动,先用df ...
- qt5.8连接mysql代码_qt5.8如何连接mysql
qt5.8连接mysql的方法:首先编译生成mysql的驱动:然后下载"libmysql.dll"库,并将其放在Qt的bin文件夹下:最后创建连接代码文件进行测试即可. 推荐:&l ...
- MYSQL闪退及DBeaver连接MYSQL出现拒绝连接的解决方法
问题描述: MYSQL闪退: DBeaver连接MYSQL失败 可能原因是MYSQL服务没有启动 解决方案: 1.使用管理者模式打开CMD 2.进入MYSQL安装目录下的bin目录,并执行mysql ...
- win环境20分钟搭建php+sql服务器Apache+php+mysql在windows下的安装与
Apache+php+mysql在windows下的安装与配置图解 先准备好软件: Apache官方下载地址:apache_2.0.55-win32-x86-no_ssl.msi,http://mir ...
最新文章
- 大家有没有推荐不错开源的小程序商城?这几个不要错过
- AI在医疗行业的最新进展
- 2018-2019-1 20165234 《信息安全系统设计基础》第四周学习总结
- 三道题套路解决递归问题
- 通达信服务器在哪个文件里,通达信“指标模块”存放在哪个文件夹里
- 电脑保护眼睛的颜色设置
- Android热修复技术——QQ空间补丁方案解析(1)
- IKexpression解读二
- 使用xlwt将数据保存到excel文件中,python
- Docker常用命令(启动、镜像相关、容器相关、文件拷贝、目录挂载、查看容器IP地址、Docker备份与恢复)
- 21CN推出免费10G邮箱
- Modesim仿真出现vlog-2388问题
- 使用Canvas把照片转换成素描画
- 腾讯云服务器购买详细流程(手把手教程)
- 程序员保持健康的生活指南
- linux下使用命令行来调节系统音量的两种方法amixer和pactl
- 我国芯片的未来发展前景如何呢
- 「APIO2016」划艇 (dp+组合数+区间离散化)(考试)
- 企业项目管理软件行业调研报告 - 市场现状分析与发展前景预测
- 关于91yun锐速,报错“Invalid module format ..........Loading ServerSpeeder failed: failed to load engine 0”