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 服务" 问题。

相关推荐
q***72199 小时前
oracle使用PLSQL导出表数据
数据库·oracle
数据库生产实战9 小时前
Oracle DG备库日志切换解析,Private strand flush not complete如何理解?(基础知识)
数据库·oracle
百***75749 小时前
从 SQL 语句到数据库操作
数据库·sql·oracle
i***39589 小时前
SQL 注入详解:原理、危害与防范措施
数据库·sql·oracle
m***567210 小时前
Win10下安装 Redis
数据库·redis·缓存
Warren9811 小时前
Python自动化测试全栈面试
服务器·网络·数据库·mysql·ubuntu·面试·职场和发展
kka杰12 小时前
MYSQL 表的增删查改-更新/删除
数据库·mysql
深藏bIue13 小时前
linux服务器mysql目录下的binlog文件删除
linux·服务器·mysql
甜鲸鱼13 小时前
Java与MySQL中的枚举(Enum)
java·mysql
q***448113 小时前
mysql配置环境变量——(‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法)
数据库·mysql·adb