报错:Client does not support authentication protocol requested by server; consider upgrading MySQL cli
IDEA启动项目登录时显示用户或密码错误
或者
连接mysql数据库时报错
原因:
mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,所以可以需要改变mysql的加密规则
- 打开cmd窗口,登录mysql;
mysql -u root -h 127.0.0.1 -P3306 -p
- -u 后面root 为自己数据库的用户名
- -h 后面为 (mysql服务所在地址),我自己是在本机测试,所以为127.0.0.1
- -P (可选,默认3306 指定端口号)
会提示输入密码,输入自己数据库的密码,可以看到版本信息,则登录成功;
- 查看现有的用户
也可以输入命令再次查看版本 select version();
查看现有的用户
SELECT user,host,plugin from mysql.user;
- 设置加密方式
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你自己的密码';
- 让设置生效
FLUSH PRIVILEGES;
- 查看设置是否成功
SELECT user,host,plugin from mysql.user;