mysql 8.0 版本远程连接出现1130 2059 错误代码问题解决方法

问题一:

navicat连接远程服务器mysql数据库报 1130-host ... is not allowed to connect to this MySqlServer...

mysql 8.0 版本远程连接出现1130 2059 错误代码问题解决方法

错误信息表明当前主机无法不被容许连接到mysql数据库。

解决方法:

在mysqlworkbench中 选择

mysql 8.0 版本远程连接出现1130 2059 错误代码问题解决方法

然后将指定用户名对应的Localhost改成通配符 %  即可解决问题

mysql 8.0 版本远程连接出现1130 2059 错误代码问题解决方法

也可以在远程服务器中采用脚本形式进行修改操作:

mysql -u root -p

mysql>use mysql;

mysql>update user set host = '%' where user = 'root'  and host='localhost';

mysql>select host, user from user;

然后重启MySQL服务。或再执行 执行一个语句 mysql>FLUSH RIVILEGES 使修改生效。

 

问题二:2059 Authentication plugin ‘caching_sha2_password’ cannot be loaded: ÕÒ²»µ½Ö¸¶¨µÄÄ£¿é¡£. 报错代码

解决方法:远程服务器中数据库中查询语句

SELECT `user`, `host`, `authentication_string`, `plugin` FROM mysql.user;

mysql 8.0 版本远程连接出现1130 2059 错误代码问题解决方法

修改root账号的密码验证插件类型为mysql_native_password这是mysql8之后的问题:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则password是自己的密码,root也是登陆账户,下同。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 

FLUSH PRIVILEGES; #刷新权限 
 

再次
SELECT user, host, authentication_string, plugin FROM mysql.user;

mysql 8.0 版本远程连接出现1130 2059 错误代码问题解决方法

问题解决 此时可以连接成功!