MySql OLEDB 驱动安装及配置问题,求可用Provider包,测试可用重分酬谢

junki 2017-11-11 06:49:05
一、开发运行环境:vs2010+SqlServer2012+C#,Windows10(64位),在Windows Server 2008也试过不行
二、尝试安装及配置过程
1、Cherry City Software
1)安装64位的(MySQLPV(0x64)),显示“MySQL Provider”,加载不了驱动,配置连接时直接出错了,激活过也是一样。
2)安装32位的(MySQLPV(0x86)),可以配置,但设置表或视图时,经常VS重启,使用SQL命令可以查询到数据;但执行任务抽取数据或转换时就异常了。
2、myoledb-3.9.6
没有32位和64位之分,安装后,显示“MySql.OLEDB Provider”,配置时“初始目录”无法设置,所以就加载不到数据库。
国外内都搜索,也尝试其他办法都不行,请大家告诉哪里有可用的安装包或其他好的思路方法。
三、实现功能要求
实现从源系统数据库MySql、Oracle和SqlServer到MySql的增量定时同步(包括插入和更新操作)。
由于查找组件和命令都要用到OLE DB连接,所以很无奈啊。

...全文
1436 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
bhguo 2020-03-02
  • 打赏
  • 举报
回复
使用DBSync吧,已实现异构数据库之间的同步,包括Access、SQL Server、Oracle、MySQL、DB2等
junki 2017-11-25
  • 打赏
  • 举报
回复
是的,不同类型的数据库建立了不同的数据源,OLEDB驱动方式还是不行,Mysql数据库已改使用ODBC方式,查找组件使用文件缓存连接器,虽然执行效率比较低,但也能达到预期效果了。 不知道Sql Server 2014、2016会不会存在同样问题?另外为什么查找组件只能是OLEDB或文件连接方式的?
LongRui888 2017-11-17
  • 打赏
  • 举报
回复
引用 7 楼 junki 的回复:
[quote=引用 3 楼 z10843087 的回复:] 看你弄的挺麻烦的。换个简单点的思路,在sql server上面建立一个链接服务器,用链接服务器来做把 下面是大版主写的一个例子,你可以参考下 http://blog.csdn.net/roy_88/article/details/50982979
非常谢谢提供的帮助,请问可以在SqlServer链接服务器创建各个来源数据库的连接,然后在在SSIS项目的ETL中引用它们吗? 我要实现:从源系统数据库MySql、Oracle和SqlServer到MySql的增量定时同步(包括插入和更新操作)。 在SSIS项目的ETL中,使用查找组件(必须要使用MySql OLEDB连接)来进行来源与目标数据对比,从而判断是进行数据插入或更新(更新要使用 脚本命令组件,而数据库连接必须要使用MySql OLEDB) [/quote] 这个要实现增量倒是可以,但是实时就很困难了。 最好的方式是你的应用程序里,同时连接要同步的3个数据库,在把数据更新到本地的数据库后,同时更新这3个数据库,这样才能达到实时的效果。 另外,ssis程序,可以设置到这3个不同数据库的数据源,你到时候要建立ssis程序时,选择这几个数据源就可以,还有,尽量用ssis里的功能来实现,
OwenZeng_DBA 2017-11-12
  • 打赏
  • 举报
回复
看你弄的挺麻烦的。换个简单点的思路,在sql server上面建立一个链接服务器,用链接服务器来做把 下面是大版主写的一个例子,你可以参考下 http://blog.csdn.net/roy_88/article/details/50982979
OwenZeng_DBA 2017-11-12
  • 打赏
  • 举报
回复
开始以为你是写的.net程序,SSIS 里面应该没法直接调用link server。你还是再试试之前的思路把。
junki 2017-11-12
  • 打赏
  • 举报
回复
引用 3 楼 z10843087 的回复:
看你弄的挺麻烦的。换个简单点的思路,在sql server上面建立一个链接服务器,用链接服务器来做把 下面是大版主写的一个例子,你可以参考下 http://blog.csdn.net/roy_88/article/details/50982979
非常谢谢提供的帮助,请问可以在SqlServer链接服务器创建各个来源数据库的连接,然后在在SSIS项目的ETL中引用它们吗? 我要实现:从源系统数据库MySql、Oracle和SqlServer到MySql的增量定时同步(包括插入和更新操作)。 在SSIS项目的ETL中,使用查找组件(必须要使用MySql OLEDB连接)来进行来源与目标数据对比,从而判断是进行数据插入或更新(更新要使用 脚本命令组件,而数据库连接必须要使用MySql OLEDB)
junki 2017-11-12
  • 打赏
  • 举报
回复
引用 2 楼 ayalicer 的回复:
vs2010 可以使用ADO.NET 去连接 mysql 不需要ado 的 oledb方式
谢谢提供的帮助,Ado.Net方式之前已经是可以了,现在就是要用OLEDB连接MySql。 我要实现:从源系统数据库MySql、Oracle和SqlServer到MySql的增量定时同步(包括插入和更新操作)。 在SSIS项目的ETL中,使用查找组件(必须要使用OLEDB连接)来进行来源与目标数据对比,从而判断是进行数据插入或更新(更新要使用 脚本命令组件,而数据库连接必须要使用OLEDB)
junki 2017-11-12
  • 打赏
  • 举报
回复
引用 1 楼 yenange 的回复:
http://blog.csdn.net/yenange/article/details/17791869 http://blog.csdn.net/yenange/article/details/17911373 一是要有 MySQL.Data.dll , 二是帮助类 有这两个就能用了 有这些, 就可以用 VS 连接到 MySql 了, 不需要其它东西。
谢谢提供的帮助,Ado.Net方式之前已经是可以了,现在我要用OLEDB连接MySql, 我要实现:从源系统数据库MySql、Oracle和SqlServer到MySql的增量定时同步(包括插入和更新操作)。 在SSIS项目的ETL中,使用查找组件(必须要使用OLEDB连接)来进行来源与目标数据对比,从而判断是进行数据插入或更新(更新要使用 脚本命令组件,而数据库连接必须要使用OLEDB)
LongRui888 2017-11-12
  • 打赏
  • 举报
回复
可以考虑用连接服务器来做,已sql server为中心,然后创建连接到oracle,mysql的连接服务器,可以吧数据,增删改到沐目标服务器
  • 打赏
  • 举报
回复
vs2010 可以使用ADO.NET 去连接 mysql 不需要ado 的 oledb方式
吉普赛的歌 2017-11-11
  • 打赏
  • 举报
回复
http://blog.csdn.net/yenange/article/details/17791869 http://blog.csdn.net/yenange/article/details/17911373 一是要有 MySQL.Data.dll , 二是帮助类 有这两个就能用了 有这些, 就可以用 VS 连接到 MySql 了, 不需要其它东西。

590

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧