You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python通过ODBC连接MySQL数据库报错,pyodbc调用失败求解决方案

问题根源

你当前使用的ODBC Driver 17 for SQL Server是微软SQL Server数据库的专用ODBC驱动,完全不兼容MySQL数据库,这是报错的核心原因。报错信息中所有提示均指向连接SQL Server失败,说明驱动根本没有识别到你要连接的目标是MySQL。

解决步骤
  1. 安装MySQL专属ODBC驱动
    下载并安装和你Python位数(32位/64位)一致的MySQL ODBC Connector,安装完成后可通过Windows ODBC数据源管理器的「驱动」标签页确认驱动名称。
  2. 修正代码中的连接配置
  • 替换驱动名为MySQL对应的ODBC驱动名,8.0版本通常为MySQL ODBC 8.0 Unicode Driver
  • 修正服务器地址配置,本地MySQL默认地址为localhost或127.0.0.1,不要填服务管理器里的显示名
  • 补充MySQL默认端口3306(如果自定义过端口就替换为你自己的端口)
修改后可运行代码示例
import pyodbc

# 配置项请根据你实际安装的驱动和MySQL配置调整
driver = '{MySQL ODBC 8.0 Unicode Driver}'
server = '127.0.0.1'
port = '3306'
database = 'tarsdb'
username = 'root'
password = '1234'

# 拼接连接字符串
conx = pyodbc.connect(f'''DRIVER={driver}; 
                          SERVER={server}; 
                          PORT={port};
                          DATABASE={database};
                          UID={username};
                          PWD={password};''')
# 创建游标
cursor = conx.cursor()
额外注意事项
  • 驱动名必须和ODBC数据源管理器中显示的完全一致,包括空格和版本号,否则会出现找不到驱动的报错
  • 不需要配置Trusted_Connection参数,该参数为SQL Server专属的Windows身份验证配置,对MySQL无效
  • 不需要将MySQL文件移动到脚本目录,正常配置驱动和连接参数即可完成连接

内容的提问来源于stack exchange,提问作者Pluto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 13:15:10