远程连接linux MariaDB 数据库 10061错误

远程连接linux MariaDB 数据库 10061错误

  • 起初我报的是这个错
  • 后来我报了一个这样的
    • 找了许多的帖子 然后我最后得出结论 可能是权限问题
    • 最后记得支持一下me 不求关注 但求赞一个!! 毕竟也是我精心寻找错误经验的分享!!

起初我报的是这个错

远程连接linux MariaDB 数据库 10061错误_第1张图片

后来我报了一个这样的

远程连接linux MariaDB 数据库 10061错误_第2张图片

找了许多的帖子 然后我最后得出结论 可能是权限问题

解决办法一
1、 将 /etc/my.cnf 中的[mysqld]节点下bind-address参数修改成0.0.0.0,表示允许任何ip主机访问此数据库
远程连接linux MariaDB 数据库 10061错误_第3张图片
2、但是这样可能会导致安全问题,所以我们这里还需要再添加iptables 防火墙规则
配置防火墙规则:允许ip 192.168.X.XXX 连接本服务器3306端口,其他ip不允许连接。

别忘记在最后保存一下防火墙规则。

命令如下:

[root@localhost ~]# iptables -A INPUT -p tcp -s 192.168.X.XXX --dport 3306 -j ACCEPT
[root@localhost ~]# iptables -A INPUT -p tcp --dport 3306 -j DROP
[root@localhost ~]# service iptables save

如果以上操作依然不行

接下来我们继续操作解决办法二

1、登录mysql

2、查看用户账号信息:
select User, host from mysql.user;

在这里插入图片描述

3、授权所有ip
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘你的密码’ WITH GRANT OPTION;

修改权限。%表示针对所有IP,password表示将用这个密码登录root用户,如果想只让某个IP段的主机连接,可以修改为

GRANT ALL PRIVILEGES ON . TO ‘root’@‘192.168.100.%’ IDENTIFIED BY ‘my-new-password’ WITH GRANT OPTION;

4、最后刷新一下
FLUSH PRIVILEGES;

5、最后再来查询一下 select User, host from mysql.user;

远程连接linux MariaDB 数据库 10061错误_第4张图片

再去连接 基本没什么问题了!!

最后记得支持一下me 不求关注 但求赞一个!! 毕竟也是我精心寻找错误经验的分享!!

你可能感兴趣的:(Linux)