Windows系统下MySQL ODBC驱动安装与设置

打印 上一主题 下一主题

主题 1807|帖子 1807|积分 5421

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
前言

ODBC(Open Database Connectivity)是Windows系统中毗连数据库的通用接口,广泛应用于数据迁徙、ETL工具、BI分析及应用步伐开发。然而,许多用户在安装和设置MySQL ODBC驱动时会遇到驱动未显示、位数不匹配或毗连失败等题目。反正今天我遇到了,今天就讲讲这个吧

一、安装前的准备工作

1.1 确认系统架构(32位 vs 64位)



  • 检查系统位数

    • 右键点击“此电脑” → 选择“属性” → 查看“系统范例”(如“64位操作系统”)。
    • 32位系统仅支持32位驱动,64位系统可同时支持32位和64位驱动,但需注意位数匹配。

1.2 下载对应的MySQL ODBC驱动



  • 官方下载地点:MySQL Connector/ODBC
  • 选择版本

    • 32位系统:下载 Win32 (x86) 版本。
    • 64位系统:下载 Win64 (x86, x64) 版本(需根据应用步伐位数选择)。

1.3 准备安装环境



  • 关闭相干应用:如MySQL服务、ODBC管理器等,避免安装冲突。
  • 管理员权限:安装驱动需以管理员身份运行安装步伐。

二、安装MySQL ODBC驱动的详细步调

2.1 安装驱动(以64位系统为例)


  • 运行安装步伐

    • 双击下载的 .msi 文件,选择“运行”。

  • 选择安装范例

    • 典范安装:适当大多数用户,自动安装驱动和相干组件。
    • 自定义安装:可勾选“ODBC Drivers”确保驱动被精确安装。

  • 验证安装

    • 安装完成后,打开 ODBC 数据源管理器(路径见下文),检查驱动是否显示。

2.2 启动ODBC管理器(关键步调!)



  • 区分位数

    • 32位管理器:C:\Windows\SysWOW64\odbcad32.exe(用于32位驱动和应用步伐)。
    • 64位管理器:C:\Windows\System32\odbcad32.exe(用于64位驱动和应用步伐)。

  • 控制面板(Win10)

    • 进入 控制面板 →系统和安全 → 管理工具 → 数据源(ODBC)

  • 快捷方式

    • 按 Win + R → 输入 odbcad32 回车,默认打开64位管理器;
    • 若需32位,需手动指定路径。


三、设置MySQL数据源(DSN)

3.1 添加数据源


  • 打开ODBC管理器

    • 根据应用步伐位数选择对应管理器。

  • 选择用户DSN或系统DSN

    • 用户DSN:仅当前用户可见,适当个人使用。
    • 系统DSN:所有效户可见,需管理员权限。

  • 添加MySQL驱动

    • 点击“添加” → 选择 MySQL ODBC 8.0 Unicode Driver(推荐Unicode) → 点击“完成”。

3.2 设置毗连参数



  • 填写信息

    • DSN名称:自定义(如“MySQL_Local”)。
    • 主机地点:MySQL服务器IP或域名(如 localhost)。
    • 端口:默认 3306。
    • 用户名/暗码:数据库登录凭据。
    • 数据库:可选默认毗连数据库。

  • 测试毗连

    • 点击“测试”按钮,确保显示“测试成功”。


四、ANSI与Unicode驱动的选择与区别

4.1 核心区别

范例适用场景字符支持推荐场景ANSI驱动纯英文或简单字符集(如ASCII)单字节字符集(如Latin-1)兼容旧版系统或简单应用Unicode驱动需要支持中文、日文、Emoji等字符多字节字符集(如UTF-16)大部门现代应用(推荐) 4.2 怎样选择?



  • 逼迫Unicode

    • 若需处理中文或特殊字符,必须选择 Unicode驱动
    • 毗连字符串中添加 CHARSET=utf8mb4(MySQL 5.5+支持)。

  • 兼容性需求

    • 若应用步伐仅支持ANSI(如某些旧版软件),则选择 ANSI驱动


五、常见题目与解决方案

5.1 驱动未显示在ODBC管理器中

缘故因由与解决



  • 位数不匹配

    • 检查驱动位数:安装的驱动与管理器位数是否一致?
    • 重新安装:卸载后重新下载对应位数的驱动。

  • 未精确注册驱动

    • 手动注册DLL
      1. # 以管理员身份运行命令提示符  
      2. regsvr32 "C:\Program Files\MySQL\MySQL Connector ODBC 8.0\lib\myodbc8w.dll"  # Unicode驱动  
      3. regsvr32 "C:\Program Files\MySQL\MySQL Connector ODBC 8.0\lib\myodbc8s.dll"  # ANSI驱动  
      复制代码

5.2 毗连时出现乱码

解决步调


  • 使用Unicode驱动:确保驱动范例为Unicode。
  • 设置字符集

    • 在毗连字符串中添加 CHARSET=utf8mb4。
    • 在MySQL服务器中验证字符集:
      1. SHOW VARIABLES LIKE 'character_set%';  
      复制代码

5.3 64位步伐无法毗连32位DSN



  • 根本缘故因由:32位和64位DSN存储在不同注册表路径中。
  • 解决方案

    • 为64位步伐创建 64位系统DSN
    • 或在应用步伐中直接使用毗连字符串(无需DSN)。


六、自动化部署脚本

6.1 批处理脚本(.bat)

脚本功能


  • 自动下载并安装 MySQL ODBC 64位驱动
  • 创建系统 DSN(以 MySQL 为例)。
  • 验证驱动安装状态。
脚本内容

  1. @echo off
  2. setlocal
  3. :: 定义变量
  4. set DRIVER_NAME="MySQL ODBC 8.3 Unicode Driver"
  5. set DSN_NAME="MyMySQL_DSN"
  6. set SERVER=localhost
  7. set DATABASE=test
  8. set UID=root
  9. set PWD=your_password
  10. set DRIVER_URL=https://dev.mysql.com/get/Downloads/Connector-ODBC/8.3/mysql-connector-odbc-8.3.0-winx64.msi
  11. set DRIVER_PATH=C:\MySQL_ODBC.msi
  12. :: 下载驱动
  13. echo 正在下载 MySQL ODBC 驱动...
  14. bitsadmin /transfer DownloadDriver /download /priority normal %DRIVER_URL% %DRIVER_PATH%
  15. :: 安装驱动(需管理员权限)
  16. echo 正在安装驱动...
  17. start /wait msiexec /i %DRIVER_PATH% /qn
  18. :: 注册驱动(确保路径正确)
  19. echo 正在注册驱动...
  20. regsvr32 /s "C:\Program Files\MySQL\MySQL Connector ODBC 8.3\lib\myodbc8w.dll"
  21. :: 创建系统 DSN
  22. echo 正在创建系统 DSN...
  23. :: 使用正确的 odbcconf 参数,通过 /A 指定操作
  24. odbcconf /A {CONFIGSYSDSN %DRIVER_NAME% "DSN=%DSN_NAME%;SERVER=%SERVER%;DATABASE=%DATABASE%;UID=%UID%;PWD=%PWD%;CHARSET=utf8mb4"} /S
  25. :: 验证 DSN 是否创建成功
  26. echo 验证 DSN...
  27. odbcad32.exe /s
  28. :: 清理临时文件
  29. del /f /q %DRIVER_PATH%
  30. echo 部署完成!请以管理员身份运行此脚本。
复制代码
使用阐明


  • 将脚本保存为 deploy_odbc.bat。
  • 管理员身份运行 脚本。
  • 替换 your_password、localhost 等参数。

附录:常见驱动下载链接


  • MySQL ODBC
  • SQL Server ODBC
  • Access 数据库引擎

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

道家人

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表