MySQL常见报错分析及解决方案总结(15)---Can’t connect to MySQL server on ‘localhost‘ (10061)

MySQL 出现 这个错误,通常是由于 MySQL 服务未启动网络连接受阻 导致的。可以按照下面的步骤来排查:

一、检查 MySQL 服务是否启动

这是最常见的原因。MySQL 客户端需要连接到运行中的 MySQL 服务进程,若服务未启动,会直接报错。

方法 1:直接通过服务管理按下 Win + R → 输入 services.msc → 找到 MySQL 相关服务(名称可能为 MySQLMySQL80 等,取决于版本):

  • 若状态为 "已启动" ,尝试右键 → "重启"
  • 若状态为 "停止" ,右键 → "启动",等待服务启动完成后再尝试连接。

方法 2:通过命令行启动以 管理员身份 打开命令提示符(CMD)运行下面的指令:

复制代码
# 启动 MySQL 服务(服务名替换为实际名称,如 MySQL80)
net start MySQL80

# 若需停止服务,可执行
net stop MySQL80
二、确认连接地址和端口是否正确

若服务已启动但仍报错,可能是连接参数错误:

方法1:检查连接地址

若使用 localhost 连接失败,尝试替换为 127.0.0.1(本地回环地址),例如:

复制代码
mysql -h 127.0.0.1 -u 用户名 -p

方法2:检查端口是否被占用或修改

MySQL 默认端口为 3306,若端口被修改(如配置文件中自定义了端口),连接时需指定端口:

复制代码
mysql -h localhost -u 用户名 -P 自定义端口 -p

若端口被其他程序占用,需关闭占用程序,或修改 MySQL 端口(在配置文件 my.cnfmy.ini 中修改 port 配置后重启服务)。

三、检查防火墙或安全软件

防火墙或安全软件可能阻止了 MySQL 服务的网络连接:

Windows 防火墙 进入 控制面板 → 系统和安全 → Windows Defender 防火墙 → 允许应用通过防火墙 ,确保 MySQL 相关程序(如 mysqld.exe)已被允许通过防火墙(包括私有和公共网络)。

四、检查 MySQL 配置文件(my.cnf/my.ini)

若配置文件中限制了连接来源,也可能导致无法连接:

找到配置文件(位置因系统而异):

Windows:通常在 C:\ProgramData\MySQL\MySQL Server X.X\my.ini

检查 bind-address 配置

  • 若存在 bind-address = 127.0.0.1,表示仅允许本地连接(默认配置,正常情况下不影响本地连接);
  • 若设置为 bind-address = 0.0.0.0,表示允许所有 IP 连接(适合远程连接,但本地连接也应正常);
  • 若设置为其他 IP(如服务器内网 IP),可能导致本地连接被拒绝,需注释掉该配置(在行首加 #)后重启服务。

五、其他可能的原因

  1. MySQL 服务异常崩溃 查看 MySQL 错误日志(配置文件中 log-error 指向的路径),排查服务启动失败的具体原因(如权限不足、数据文件损坏等)。

  2. 安装目录权限问题

Windows:确保 MySQL 安装目录(如 C:\Program Files\MySQL)的权限为 "Everyone 可读可写"(仅调试时临时设置,正常使用需遵循最小权限原则)。

总结解决步骤

  1. 优先检查并启动 MySQL 服务;
  2. 替换连接地址为 127.0.0.1 尝试连接;
  3. 检查防火墙是否拦截 3306 端口;
  4. 排查配置文件中的连接限制或端口修改;
  5. 查看错误日志定位服务异常原因。

按以上步骤操作后,通常能解决 "无法连接到 localhost 的 MySQL 服务" 问题。

相关推荐
AI应用实战 | RE16 小时前
014、索引高级实战:当单一向量库不够用的时候
数据库·人工智能·langchain
ffqws_16 小时前
Spring Boot入门:通过简单的注册功能串联Controller,Service,Mapper。(含有数据库建立,连接,及一些关键注解的讲解)
数据库·spring boot·后端
清水白石00816 小时前
《Python 架构师的自动化哲学:从基础语法到企业级作业调度系统与 Airflow 止损实战》
数据库·python·自动化
阿华田51217 小时前
MySQL性能优化大全
数据库·mysql·性能优化
kaico201817 小时前
python操作数据库
开发语言·数据库·python
被摘下的星星17 小时前
MySQL 别名使用规则详解
数据库·mysql
墨着染霜华17 小时前
MySQL 重复数据删除语句
数据库·mysql
ego.iblacat17 小时前
PostgreSQL 数据库
数据库·postgresql
wgzrmlrm7417 小时前
如何解决ORA-28040没有匹配的验证协议_sqlnet.ora版本兼容设置
jvm·数据库·python
一江寒逸17 小时前
零基础从入门到精通MySQL(附加篇):面试八股文全集
数据库·mysql·面试