对于Navicat连接数据库mysql 出现报错2003(10060),如下所示报错
经过查询总结以上出现问题的主要解决方法三种:
1、MySQL的服务没有启动,这个是最常见的问题原因
WIN+R,输入services.msc打开服务管理器,找到mysql
如果显示mysql为禁用状态,可以右键启动服务,然后在Navicat重新测试连接
2、MySQL没有远程权限
1)查看权限
查看当前 root 用户的相关信息,是否有远程权限,如果下图所示,如果root用户的host是localhost则表示只支持本地访问,不允许远程访问。需要修改为 %
//登录mysql
mysql -u root -p;
//选择mysql数据库
use mysql;
//查看user表
select host, user, authentication_string, plugin from user;
2)修改权限
如果是mysql8.0之前的版本
mysql -u root -p #进入MySQL数据库后进行一下操作。
mysql> use mysql;
mysql> grant all privilegs on *.* to 'root'@'%' identified by 'root用户密码' with grant option;
mysql> flush privileges;
如果是mysql8.0以上版本
mysql> update user set host = '%' where user = 'root';
mysql> flush privileges;
3、防火墙拦截
打开Windows设置,选择更新与安全
选择windows安全中心,然后防火墙和网络保护
打开 高级设置
左侧入站规则,然后右侧点击新建规则,选择端口,再点击下一步
特定本地端口,填入3306,其他默认不修改,点击下一步
默认不修改,点击下一步
默认不修改,点击下一步
填写名称和描述,取名自行取,点击完成,即可