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

Python连接MySQL数据库失败:Error 2003报错求助

解决MySQL连接报错Error 2003: Can't connect to MySQL server on 'localhost' (10061)

结合你已验证的信息(服务运行正常、账号密码正确、Workbench可连接),给出以下针对性解决方案:

1. 替换localhost为127.0.0.1强制TCP/IP连接

Windows环境下localhost可能优先解析为IPv6地址(::1),而你的MySQL服务可能仅监听IPv4的127.0.0.1。修改脚本配置:

config = {
'user': 'username',
'password': 'password',
'host': '127.0.0.1',  # 替换为127.0.0.1
'database': 'mydatabase'
}

2. 检查并修复用户登录权限

确认你的数据库用户是否允许从localhost或127.0.0.1登录:

  • 通过Workbench登录MySQL,执行SQL查询用户权限:
SELECT user, host FROM mysql.user WHERE user = 'username';
  • 如果结果中host列不是localhost或127.0.0.1,执行授权命令:
GRANT ALL PRIVILEGES ON mydatabase.* TO 'username'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

(若需要允许从127.0.0.1登录,将@'localhost'替换为@'127.0.0.1')

3. 调整mysql-connector-python版本兼容性

你使用的mysql-connector-python 8.0.23与MySQL Server 5.7可能存在兼容性问题,尝试降级到适配版本:

pip uninstall mysql-connector-python
pip install mysql-connector-python==5.1.49

4. 检查MySQL配置文件的网络监听设置

打开MySQL配置文件(Windows下通常为my.ini,位于安装目录或data文件夹内):

  • 确保bind-address设置为127.0.0.1(允许本地IPv4连接)
  • 确保未开启skip-networking配置(若存在该行,注释后重启MySQL服务)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 22:22:22