本地Navicat远程连接Centos7服务器出现的错误汇总

上一篇在Centos配置好MySQL8后,本地使用Navicat远程连接时,出现了几个错误,在此记录

1130-host ... is not allowed to connect to this MySql server

1251 client does no support authentic…………

 

第一个错误,可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

解决的方法有几种,详细参考这篇:https://joinyo.iteye.com/blog/1489380

解决步骤:

1. 连接服务:
mysql -u root -p
2. 查看当前所有数据库:
show databases;

此时可以看到一个名为"mysql"的数据库,选择该数据库

3. 
use
mysql;
4. 查看mysql数据库中所有的表,看到有个user表
show tables;

 

5. 查看一下的信息
select host,user,plugin,authentication_string from mysql.user;
6. 修改user表中的Host:
update user set Host='%' where User='root';

 

做完前6步后,错误1可以得到解决了,但是又出现了错误2的问题。
错误2的解决在接下来步骤。

 

备注:host为 % 表示不限制ip   localhost表示本机使用    plugin非mysql_native_password 则需要修改密码

(上图是已经修改过的了,没修改之前也是caching_sha2_password)

修改用户密码(此处我修改的是root用户)

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'newpassword'; #更新一下用户的密码 root用户密码为newpassword
(这一步是在前面步骤的基础上解决错误2的操作)

 

 写到这有点凌乱了,给出参考博客

mysql服务设置远程连接 解决1251 client does not support ..问题(https://blog.csdn.net/qq_22211217/article/details/80415248)

用navicat连接数据库报错:1130-host ... is not allowed to connect to this MySql server如何处理(https://blog.csdn.net/dabao87/article/details/80571877)

https://joinyo.iteye.com/blog/1489380

原文地址:https://www.cnblogs.com/Guhongying/p/10909045.html