Navicat连接mysql 2003 - Can't connect to MySQL server on ' '(10038)

https://blog.csdn.net/u012835679/article/details/78435452

linux下mysql开启远程访问权限及防火墙开放3306端口
默认mysql的用户是没有远程访问的权限的,因此当程序跟数据库不在同一台服务器上时,我们需要开启mysql的远程访问权限
主流的有两种方法,改表法和授权法。
解决这类问题方法如下,报10038是服务器防火墙没有开启3306端口
1.打开防火墙配置文件
#vim /etc/sysconfig/iptables

添加这样一行(其实你直接把上面80端口那行复制粘贴端口改成3306就可以了,这样能保证不会错):
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

2.然后重启防火墙
#service iptables restart

这主要是解决Navicat连接mysql出现2003-10038,链接不上的问题

如果还是不好你就要更改mysq里面的权限了
步骤如下:
1、登陆mysql
#mysql -u root -p
2、修改mysql库的user表,将host项,从localhost改为%。%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip,比如可以将localhost改为192.168.1.123,这表示只允许局域网的192.168.1.123这个ip远程访问mysql。
更改数据库用户权限grant all privileges on portal.* to root@zq27 identified by 'root';
mysql> use mysql; 
mysql> grant all privileges on portal.* to root@zq27 identified by 'root';
mysql> update user set host = '%' where user = 'root'; 
mysql> select host, user from user; 
mysql> flush privileges;
然后就大功告成,可以解决远程无法连接,以及无法访问本地数据库的问题啦!原创
--------------------- 
作者:AndreaDittis旦 
来源:CSDN 
原文:https://blog.csdn.net/u012835679/article/details/78435452 
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值