解决Nacicat无法连接远程mysql 报错10038

用lnmp一键安装包搭好环境用navicat连接发现无法连接并报错

在这里插入图片描述
  • 登陆mysql
#mysql -u root -p

2、修改mysql库的user表,将host项,从localhost改为%。%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip,比如可以将localhost改为192.168.1.123,这表示只允许局域网的192.168.1.123这个ip远程访问mysql。
更改数据库用户权限(注意 第二行填写自己的mysql密码)

mysql> use mysql; 
mysql>grant all privileges on *.* to 'root'@'%' identified by '~~yourpwd~~  ';
mysql> update user set host = '%' where user = 'root'; 
mysql> select host, user from user; 
mysql> flush privileges;
在这里插入图片描述

重启服务器 navicat 重新连接

发现还是报错 下面设置下防火墙

  • 打开防火墙配置文件
vim /etc/sysconfig/iptables
  • 把3306的端口后面改为ACCEPT
    如图


    在这里插入图片描述
  • 然后重启防火墙
service iptables restart
  • 测试发现连接成功


    - 打开防火墙配置文件
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。