项目场景:
本地Navicat连接远程mysql服务器
问题描述:
navicat提示:Can’t connect to MySQL server (10060)
原因分析:
1.网络不通
2.防火墙设置
3.mysql的账户设置。
解决方案:
-
检查能不能ping通 ping ip
-
防火墙是否放过mysql的进程,是否屏蔽了mysql的3306端口。
#添加白名单 iptables -I INPUT -p tcp --dport 3306 -s 你的pc的IP -j ACCEPT
-
mysql账户是否不允许远程连接。如果无法连接可以尝试以下方法:
//登录MySQL mysql -u root -p //任何远程主机都可以访问数据库 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; //需要输入次命令使修改生效 mysql> FLUSH PRIVILEGES; //退出 mysql> EXIT
也可以通过修改表来实现远程
mysql -u root -p
2.
3. mysql> use mysql;
4.
5. mysql> update user set host = '%' where user = 'root';
6.
7. mysql> select host, user from user;