3.2.3 使用Navicat登录mysql步骤

本文详细介绍如何通过修改防火墙设置及调整MySQL验证方式实现远程登录MySQL数据库。首先,需关闭CentOS7的firewall并启用iptables,开放3306端口。接着,在my.cnf文件中设置验证方式为mysql_native_password,重启MySQL服务后,使用Navicat工具成功远程登录。

1. 修改防火墙设置

关闭防火墙,开放3306端口
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。
1.1、关闭firewall:

[root@host ~]# systemctl stop firewalld.service
[root@host ~]# systemctl disable firewalld.service
[root@host ~]# systemctl mask firewalld.service

1.2、安装iptables防火墙

[root@host ~]# yum install iptables-services -y

1.3.启动设置防火墙

[root@host ~]# systemctl enable iptables
[root@host ~]# systemctl start iptables

1.4.查看防火墙状态

[root@host ~]# systemctl status iptables

1.5 编辑防火墙,增加端口(第三句式增加端口的句子)

[root@host ~]# vi /etc/sysconfig/iptables #编辑防火墙配置文件
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
:wq! #保存退出

1.6.重启配置,重启系统

[root@host ~]# systemctl restart iptables.service #重启防火墙使配置生效
[root@host ~]# systemctl enable iptables.service #设置防火墙开机启动

注意:以上操作如果出现xxx command not found 的情况,我们只要sudo yum install xxx 就可以了,然后会自动给下载的。
1.7 调试3306端口是否能登陆上去
使用命令:

[root@host ~]# sudo iptables -L -n

结果如图
在这里插入图片描述

2. 修改验证方式

2.1 由于myslq8不支持动态修改密码验证方式,所以要先停止mysql

[root@host ~]# systemctl stop mysqld.service

2.2 在my.cnf文件中默认有下面的语句,
删除前面的#号即可,没有的话就把它添加到my.cnf中,使用vi /etc/my.cnf,进入编辑

[root@host ~]# vi /etc/my.cnf;
default-authentication-plugin=mysql_native_password

2.3 重新启动mysql,登录用户

[root@host ~]# systemctl mysqld.service start
[root@host ~]# mysql -u root -p

由于修改了默认登录验证方式,需要重新刷新密码策略才可修改密码;

[root@host ~]# show variables like '%password%';
+----------------------------------------------+-----------------+
| Variable_name                                | Value           |
+----------------------------------------------+-----------------+
|                                                                |
| validate_password.policy                     | LOW             |
| validate_password.special_char_count         | 1               | 

mysql> set global validate_password.policy=0;

2.4 修改root用户密码,以启用新的验证方式

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new password';
mysql> FLUSH PRIVILEGES;

电脑端打开Navicat再次连接登录mysql即可。
在这里插入图片描述
这样我们就实现了远程登陆mysql数据库。

参考连接:

1

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值