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

Django连接本地MySQL Community Server报错(2002,10061)求助

Django连接本地MySQL出现(2002, "Can't connect to MySQL server on 'localhost' (10061)")错误的解决方法

问题描述

我已经为Python安装了MySQL环境,尝试用以下Django数据库配置连接本地MySQL Community Server:

DATABASES = {
        'default': {                                           
            'NAME': "food",
            'ENGINE': 'django.db.backends.mysql',
            'HOST': 'localhost',
            'USER': 'root',
            'PASSWORD': 'groot',
        }
}

执行代码时遇到错误:

connection = Database.connect(**conn_params)
File "C:\Users\mona\Downloads\food-ordering-system-master\food-ordering-system-master\food-ordering-system\env\lib\site-packages\MySQLdb\__init__.py", line 84, in Connect
return Connection(*args, **kwargs)
File "C:\Users\mona\Downloads\food-ordering-system-master\food-ordering-system-master\food-ordering-system\env\lib\site-packages\MySQLdb\connections.py", line 179, in __init__
super(Connection, self).__init__(*args, **kwargs2)
django.db.utils.OperationalError: (2002, "Can't connect to MySQL server on 'localhost' (10061)")

解决步骤

  • 检查MySQL服务状态
    按Win+R输入services.msc打开服务管理器,找到MySQL相关服务(如MySQL80),确认其处于“正在运行”状态。未启动则右键点击“启动”,建议设置为自动启动避免重复问题。

  • 替换localhost为127.0.0.1
    部分环境下localhost解析异常,修改配置中的HOST字段:

    'HOST': '127.0.0.1',
    
  • 确认MySQL端口配置
    默认MySQL端口为3306,若你修改过端口,需在配置中添加PORT参数:

    'PORT': '3307',  # 替换为你的实际端口号
    
  • 验证root账号本地连接权限
    打开MySQL命令行,执行以下命令查看root账号的允许连接主机:

    SELECT user, host FROM mysql.user WHERE user='root';
    

    若root对应的host不是localhost或%,执行授权命令:

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'groot';
    FLUSH PRIVILEGES;
    
  • 检查防火墙设置
    确认Windows防火墙未阻止MySQL端口(默认3306)的入站连接,可暂时关闭防火墙测试是否能正常连接。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 01:50:24