ODBC连接数据库提示:在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

举报
云技术搬运工 发表于 2021/09/17 09:27:54 2021/09/17
【摘要】 问题现象:业务程序通过ODBC链接RDSforMysql数据库,程序启动后运行提示:[Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配。 处理思路:梳理出ASP程序到数据库中间的关键节点,ASP程序-》ODBC驱动程序管理器-》Mysql驱动-》数据库,进行定界。

问题现象

业务程序通过ODBC链接RDSforMysql数据库,程序启动后运行提示:[Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配。

1.png

处理思路

梳理出ASP程序到数据库中间的关键节点,ASP程序-ODBC驱动程序管理器-Mysql驱动-》数据库,进行定界。

4.png

排查过程

1、通过DAS登录RDS、RDS本身的日志,确认RDS本身正常,并通过ODBC数据源连接RDS进行test结果正常,来定界业务异常和RDS数据库无关,问题出现在ASP程序-ODBC数据源(Mysql驱动)这一段,也验证了‘驱动程序和应用程序之间的体系结构不匹配。’是根因 。

2.png


2、定界不是数据库本身问题,需排查ODBC驱动管理器、mysql驱动来解决。根据报错提示‘驱动程序和应用程序之间的体系结构不匹配’,尝试更换驱动程序版本解决。


3、分别下载、安装mysql ODBC32位和64位的驱动程序,然后再卸载了64位的odbc驱动,再下载安装32位的驱动(此时遇到需依赖安装32位VS的问题,那就先下载安装提示的VS),并更新ODBC数据源的驱动程序后,问题解决。

3.png

添加ODBC数据源的方法:控制面板-》管理工具下打开ODBC

5.png

根因分析

前端业务通过ASP+ODBC调用后台数据库,但是安装的ODBC版本为64位,而ASP为32位,所以不匹配。

问题解决

重新下载安装了MYSQL ODBC8.0 CONNECTOR 32位版(前提需要安装微软Visual Studio 2015 x8632位版),然后重启,再打开ODBC 建立32DSN,问题解决!


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。