下面是 “Can't connect to MySQL server on localhost (10061)解决方法”的完整攻略。
问题说明
当我们在连接 MySQL 数据库时,有时会遇到如下错误:
Can't connect to MySQL server on localhost (10061)
这个问题的出现是因为 MySQL 连接被拒绝,可能是由于 MySQL 服务器没有运行,或者连接端口被防火墙禁用等引起的。下面我们来一一解决这些问题。
解决方法
1. 检查 MySQL 服务器是否在运行状态
要连接 MySQL 数据库,MySQL 服务器必须运行。我们可以启动 MySQL 服务器来解决这个问题。
在 Windows 系统上,可以使用下面的命令检查 MySQL 服务器是否在运行状态:
net start mysql
如果 MySQL 服务器没有运行,我们可以使用以下命令启动 MySQL 服务器:
net start mysql
2. 检查防火墙设置
如果 MySQL 服务器正在运行,但我们仍然无法连接到它,可能是由于防火墙的端口限制导致的。如果我们的 MySQL 服务器运行在默认端口(3306),那么我们需要在防火墙中允许 3306 端口通过。
在 Windows 系统中,可以按如下步骤添加一个允许通过的防火墙规则:
1. 打开“控制面板”并单击“Windows Defender 防火墙”;
2. 在左侧菜单中,单击“高级设置”;
3. 在左侧菜单中,单击“传入规则”;
4. 在右侧菜单中,单击“新建规则”;
5. 选择“端口”选项并单击“下一步”;
6. 选择“TCP”选项并在“特定本地端口”中输入“3306”(如果我们的 MySQL 服务器使用不同的端口,应该输入服务器端口号);
7. 选择“允许连接”选项并单击“下一步”;
8. 选择“所有网络类型”选项并单击“下一步”;
9. 为规则指定一个名称并单击“完成”。
示例1
问题描述:
在 Windows 10 中,我的 MySQL 服务器运行在默认端口上(3306),当我使用 phpMyAdmin 连接到 MySQL 服务器时,我遇到了“Can't connect to MySQL server on localhost (10061)”的错误。
解决方法:
- 首先,我检查 MySQL 服务器是否正在运行。
- 在检查服务器是否在运行状态后,我检查了防火墙设置。我发现 3306 端口被阻止了,所以我添加了一个防火墙规则允许通过 3306 端口连接到 MySQL 服务器。
- 最后,我重新启动了 MySQL 服务器,并成功地连接到 MySQL 数据库。
示例2
问题描述:
在 CentOS 7 中,我无法连接到我的 MySQL 服务器,使用以下命令连接:
mysql -u root -p
但是我收到了以下错误消息:
Can't connect to MySQL server on 'localhost' (10061)
解决方法:
- 首先,我检查 MySQL 服务器是否正在运行。
- 再次检查以下命令是否正确:
mysql -u root -p
如果我的 MySQL 服务器运行在不同的主机上,则必须在连接命令中指定主机名或 IP 地址。
3. 如果我的 MySQL 服务器运行在默认端口(3306)上,则我使用以下命令检查 3306 端口是否被防火墙禁用或开放:
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
如果我的 MySQL 服务器运行在不同的端口上,则必须使用不同的端口号。
4. 最后,我重新启动了 MySQL 服务器,并成功地连接到 MySQL 数据库。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Can”t connect to MySQL server on localhost (10061)解决方法 - Python技术站