
报错信息:
Can't connect to MySQL server on 'localhost'(10061)
报错分析:不能连接到localhost 上的mysql
出现这个报错通常意味着客户端无法与本地的 MySQL 服务器建立连接。即说明"localhost"计算机是存在的,但在这台机器上却没提供MySQL服务。需要将这台机器上的MySQL服务启动,如果机子负载太高没空相应请求也会产生这个错误。
解决方案:
既然没有启动那就去启动这台机子的mysql。如果启动不成功,可能是因为my.ini配置的有问题。重新配置其即可。
如果觉得mysql负载异常,可以先查看mysql当前的进程再做调配。
以下是解决步骤:
-
MySQL 服务未启动
- 检查 MySQL 服务是否正在运行
- Windows: 在服务管理器中查看 "MySQL" 服务状态
- Linux: 使用
systemctl status mysql
或service mysql status
命令 - 如果未运行,启动服务:Windows 可在服务管理器中启动,Linux 用
systemctl start mysql
-
端口被占用或配置错误
- 默认 MySQL 端口是 3306,可能被其他程序占用
- 检查 MySQL 配置文件(my.cnf 或 my.ini)中的端口设置
- 尝试指定端口连接:
mysql -h localhost -P 3306 -u 用户名 -p
-
网络连接问题
- 尝试使用 IP 地址而非 localhost 连接:
mysql -h 127.0.0.1 -u 用户名 -p
- 检查防火墙设置,确保 3306 端口未被阻止
- 尝试使用 IP 地址而非 localhost 连接:
-
MySQL 配置限制
- 检查配置文件中的
bind-address
设置,确保允许本地连接 - 查看
skip-networking
选项是否被启用(该选项会禁用网络连接)
- 检查配置文件中的
-
权限问题
- 确认用户是否有从 localhost 连接的权限
- 可以通过其他方式登录后执行
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'localhost' IDENTIFIED BY '密码';
授权
-
MySQL 程序文件损坏
- 如果以上方法都无效,可能是 MySQL 程序文件损坏
- 尝试重新安装 MySQL 服务