确认MySQL服务已运行,Windows通过services.msc,Linux用systemctl命令;2. 检查配置文件中bind-address是否允许远程访问,建议设为0.0.0.0并确认端口为3306;3. 防火墙或安全组需开放3306端口;4. 授权用户'root'@'%'并刷新权限,确保远程连接被允许。

MySQL连接出现错误10061通常表示客户端无法与MySQL服务器建立连接,常见于“由于目标计算机积极拒绝,无法连接”这类提示。这说明连接请求被目标端口拒绝,可能是服务未运行、网络配置问题或防火墙限制。以下是几个实用的排查和解决方法。
检查MySQL服务是否正在运行
错误10061最常见的原因是MySQL服务没有启动。需要确认服务处于运行状态。
- 在Windows系统中,按 Win + R,输入 services.msc,查找 MySQL 服务(如 MySQL80 或 mysql),确保其状态为“正在运行”,如果不是,请手动启动。
- 在Linux系统中,执行命令:
sudo systemctl status mysql
若未运行,使用:
sudo systemctl start mysql
确认MySQL监听的端口和IP绑定
MySQL默认监听3306端口,但如果配置文件中绑定了本地回环地址(127.0.0.1)或端口被修改,远程连接会失败。
- 打开MySQL配置文件:
Windows:my.ini
Linux:/etc/mysql/mysql.conf.d/mysqld.cnf 或 /etc/my.cnf - 查找 bind-address 配置项,如果设置为 127.0.0.1,表示只允许本地连接。可注释掉或改为 0.0.0.0 以允许所有IP连接(注意安全风险)。
- 确认 port 是否为3306,如果不是,需使用对应端口连接。
- 修改后重启MySQL服务使配置生效。
检查防火墙和安全组设置
即使服务运行且端口正确,防火墙也可能阻止外部访问。
PHP5学习对象教程由美国人古曼兹、贝肯、瑞桑斯编著,简张桂翻译,电子工业出版社于2007年12月1日出版的关于PHP5应用程序的技术类图书。该书全面介绍了PHP 5中的新功能、编程方法及设计模式,还分析阐述了PHP 5中新的数据库连接处理、错误处理和XML处理等机制,帮助读者系统了解、熟练掌握和高效应用PHP。
- Windows:进入“高级安全Windows Defender防火墙”,添加入站规则允许3306端口(TCP)。
- Linux:使用ufw或iptables开放端口,例如:
sudo ufw allow 3306/tcp - 云服务器(如阿里云、腾讯云)还需登录控制台,在安全组中添加3306端口的入站规则。
验证用户权限和远程访问设置
MySQL账户默认可能不允许从远程主机连接。
- 登录MySQL(本地):
mysql -u root -p - 查看用户权限:
SELECT host, user FROM mysql.user;
如果root用户的host是localhost,则不能远程登录。 - 授权远程访问(例如允许root从任意IP登录):
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;
然后执行:
FLUSH PRIVILEGES;
基本上就这些。从服务状态、配置文件、网络策略到用户权限逐一排查,基本能解决10061连接问题。关键是确认服务运行、端口开放、允许远程连接。不复杂但容易忽略细节。









