一, 问题
在连接Mysql时报错, caching_sha2_password can not load
二,问题原因
报错信息 "caching_sha2_password can not load" 通常出现在尝试连接到使用 MySQL 8.0 或更高版本的数据库时,因为从 MySQL 8.0 开始,默认的用户密码认证插件变成了 caching_sha2_password
。
三,解决方法
1,升级你的数据库客户端库到支持 caching_sha2_password
认证插件的版本。
2,如果你不能升级客户端库,可以将 MySQL 用户的密码认证方式改为 mysql_native_password
:
ALTER USER 'your_username'@'your_host' IDENTIFIED WITH 'mysql_native_password' BY 'your_password';
如果不限定客户端ip的话,可以把'your_host'换成'%'
3,如果你是在linux服务器上登录数据库,在客户端连接时指定认证插件:
mysql -u your_username -p --default-auth=mysql_native_password
确保替换 your_username
, your_host
, 和 your_password
为你的实际用户名、主机和密码。如果不限定客户端ip的话,可以把'your_host'换成'%'。
再去连接。
问题解决!