LNMP1.5解决MySQL无法远程连接问题

/ 0评 / 0

解决思路:

之前也遇到过这个问题,解决的途径也是五花八门,从百度和Google上也看到各种解决方案,基本上分以下几种:

1.没有给root对应的权限

-- @'192.168.1.123'可以替换为@‘%’就可任意ip访问
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.123' IDENTIFIED BY '' WITH GRANT OPTION; 
mysql> FLUSH PRIVILEGES;

2.直接用 UPDATE 更新 root 用户 Host, 但不推荐

mysql> UPDATE user SET Host='192.168.1.123' WHERE User='root' AND Host='localhost' LIMIT 1;
mysql> FLUSH PRIVILEGES;

以上2种方法如果都使用了,问题依然没有解决。于是继续在lnmp官网上找寻答案,结果终于找到了。https://lnmp.org/faq.html

MySQL/MariaDB无法远程连接,如何开启?
为了安全LNMP默认是禁止远程连接的,开启方法:https://bbs.vpser.net/thread-13563-1-1.html

直接通过iptables进行操作

1.查看已有的iptables规则,以序号显示

iptables -L -n --line-numbers

看命了我们发现3306是drop的,所以我们要删掉或者允许。

2.删除对应的DROP规则

iptables -D INPUT 6

3.查看iptables策略:

iptables -L

4.保存策略到指定文件(后面文件路径及文件名可自定义):

安装iptables-persistent,安装后它以守护进程的方式来运行,系统重启后可以自动将保存的内容加载到iptables中。当然前提也是需要先保存规则

apt-get install iptables-persistent

保存防火墙规则

<br />iptables-save > /etc/iptables/rules.v4

5.应用策略:

保存之后,可以通过iptables-restore命令载入

iptables-restore < /etc/iptables/rules.v4

输入 y

6.删除策略

需先cat /etc/iptables/rules.v4确认删除第几行,或者直接操作/etc/iptables/rules.v4文件也行:

iptables -D INPUT 2

发表评论

邮箱地址不会被公开。 必填项已用*标注