【云服务器配置安全组】- 关于mysql配置远程访问权限之后Navicat仍然不能远程连接的问题

最近新开了一个服务器,在部署mysql环境的时候遇到Navicat不能远程连接的问题。

问题具体如下:

  1. CentOS上成功安装mysql,mysql服务成功启动;
  2. iptables开放3306端口
iptables -D INPUT -p tcp -s 192.168.1.66 --dport 3306 -j ACCEPT

或者在 /etc/sysconfig/iptables 文件中添加如下内容:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

然后重启iptables服务

service iptables restart
  1. 成功配置mysql远程访问权限。
# 在服务器上进入MySQL控制台
$ mysql -u root -p
# 对于mySQL 8.0及以后版本
> use mysql;
> update user set user.Host='%' where user.User='root';
> flush privileges;
# 对于8.0以前的版本
> grant all privileges on *.* to root@'%' identified by '你的密码';
> flush privileges;
> exit;
  1. Navicat远程连接服务器mysql出现问题:一直连接失败
    【云服务器配置安全组】- 关于mysql配置远程访问权限之后Navicat仍然不能远程连接的问题_第1张图片
    这是由于云服务器的安全组里面没有对外开放3306端口。需要解除对3306端口的限制。

解决方法

  1. 进入到云服务器的控制台点击服务器名称:
    【云服务器配置安全组】- 关于mysql配置远程访问权限之后Navicat仍然不能远程连接的问题_第2张图片
  2. 点击安全组
    【云服务器配置安全组】- 关于mysql配置远程访问权限之后Navicat仍然不能远程连接的问题_第3张图片
  3. 点击配置规则
    【云服务器配置安全组】- 关于mysql配置远程访问权限之后Navicat仍然不能远程连接的问题_第4张图片
  4. 选择入方向,添加规则【云服务器配置安全组】- 关于mysql配置远程访问权限之后Navicat仍然不能远程连接的问题_第5张图片
  5. 设置3306端口
    【云服务器配置安全组】- 关于mysql配置远程访问权限之后Navicat仍然不能远程连接的问题_第6张图片
  6. Navicat重试连接,连接成功。
    【云服务器配置安全组】- 关于mysql配置远程访问权限之后Navicat仍然不能远程连接的问题_第7张图片

其他例如Tomcat(8080)、HTTPS(443)等要想进行远程访问也需要在安全组里面添加相应端口。

你可能感兴趣的:(突发奇想,碰壁思痛,mysql,Navicat远程连接,安全组,云服务器,CentOS)