1.连接服务器异常
本地连接正常 但Navicat无法正常连接,局限于mysql安装在linux服务器 开发通过本地连接无法连接上
问题分析:我们安装好数据库之后,需要进行授权才能进行远程登录。
1.确保服务器防火墙开启3306端口
查看防火墙是否已开放3306端口
firewall-cmd --query-port=3306/tcp
设置3306端口为永久开放
firewall-cmd --add-port=3306/tcp --permanent
重载防火墙
firewall-cmd --reload
查看firewalld状态,发现当前是dead状态,即防火墙未开启
systemctl status firewalld
关闭防火墙
systemctl stop firewalld
启动防火墙
systemctl start firewalld
查看已开放端口列表
firewall-cmd --list-port
2.通过mysql的本地服务进行修改连接权限
$ mysql -u root -p #连接服务登录mysql
> show databases; #查看当前所有数据库
> use mysql; #进入mysql数据库
> show tables; #查看mysql数据库中所有的表
> select Host, User from user; #查看user表中的数据
> update user set Host='%' where User='root'; #修改user表中的Host
> flush privileges; #最后刷新一下
2.1 连接服务登录mysql
2.2 查看当前所有数据库
2.3 进入mysql数据库
2.4 查看mysql数据库中所有的表
2.5 查看user表中的数据
2.6 修改user表中的Host
2.7 最后刷新一下