今天装MySQL升级到了8.4.5,然后用客户端连接时报错了2059
2059 Authentication plugin 'caching_sha2_password' cannot be loaded
原因
mysql8 之前的版本中加密规则是mysql_native_password,而MySQL8版本启用了新特性,用户登录加密规则改为了caching_sha2_password,用的客户端有点老所以不支持,升级客户端或更改为支持caching_sha2_password的客户端可以的,但用习惯了用出感情来了,那就调整MySQL加密规则改回原来的mysql_native_password。
步骤
直接进入MySQL所有服务器,用命令行的MySQL登录
mysql -uroot -p
#输入密码登录
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
-- 如果用户是 'root'@'localhost'
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
FLUSH PRIVILEGES;
确认修改成功
USE mysql;
SELECT User, Host, plugin FROM user;
确认 root
用户的 plugin
值为 mysql_native_password
。
评论区