ODBC连接MSAccess与MySQL失败问题求助
问题解决思路
核心原因定位
报错「Architecture mismatch between the driver and the application」本质是32/64位架构不兼容:Windows 10是64位,但MS Access 2019默认安装为32位版本,而你之前配置的是64位MySQL ODBC驱动/DSN,两者架构不匹配导致无法连接。
具体解决步骤
1. 确认Access版本位数
打开Access,依次点击「文件」→「账户」→「关于Access」,查看标注的是32位还是64位。后续操作完全以此为准:
- 若为32位:必须使用32位MySQL ODBC驱动+32位DSN
- 若为64位:使用64位驱动+64位DSN(你之前的64位驱动即可用)
2. 解决32位ODBC驱动安装的VC++ Redist问题
安装32位Connector/ODBC时提示「已存在更高版本VC++ Redist」,可按以下方式处理:
- 方案1:强制跳过 Redist 检查
找到32位MySQL ODBC驱动安装包(mysql-connector-odbc-8.0.35-win32.msi),右键选择「打开命令提示符窗口」,执行命令:
该参数会让安装程序忽略VC++ Redist版本检测,直接完成驱动安装(高版本VC++ Redist默认向下兼容旧版依赖)。msiexec /i mysql-connector-odbc-8.0.35-win32.msi /quiet - 方案2:安装最新32位VC++ Redist
安装微软官网提供的最新版32位Visual C++ Redistributable(如2022版x86),完成后重新运行32位ODBC驱动安装包即可正常安装。
3. 配置对应位数的DSN
- 若使用32位Access:必须打开32位ODBC数据源管理器(64位系统中,常规控制面板的ODBC是64位的),直接运行路径:
C:\Windows\SysWOW64\odbcad32.exe,在这个管理器里配置MySQL的DSN并测试连接。 - 若使用64位Access:直接用控制面板「管理工具」里的ODBC数据源管理器配置64位DSN即可。
4. 解决Access内看不到MySQL驱动的问题
- 确保已安装对应位数的MySQL ODBC驱动,且通过对应位数的ODBC管理器配置了DSN。
- 在Access中选择「新建数据源>从其他数据源>ODBC数据源」时,选择「机器数据源」标签,找到你配置的对应位数MySQL DSN即可(不要选「文件数据源」可能出现的不兼容项)。
5. 备选方案:切换Access到64位版本
如果上述32位驱动安装仍有问题,且你的Office许可支持,可将Access切换为64位:
- 卸载当前32位Office/Access
- 重新运行Office安装程序,选择「自定义安装」,指定安装64位版本
- 安装完成后使用你之前配置的64位MySQL ODBC驱动和DSN,即可正常连接
内容的提问来源于stack exchange,提问作者user2998163
相关产品推荐
相关产品推荐

