admin管理员组

文章数量:1650900

问题原因

mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,把mysql8之后版本加密规则改为mysql_native_password即可

解决办法

首先查看mysql版本

在命令行中输入
mysql -V

或

进入mysql命令行输入
select version();

查看加密规则,可以看到此时是caching_sha2_password

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select user,host,plugin from user where user='root';
+------+-----------+-----------------------+
| user | host      | plugin                |
+------+-----------+-----------------------+
| root | localhost | caching_sha2_password |
+------+-----------+-----------------------+

进入mysql shell,简单两句命令即可解决

alter user 'root'@'localhost' identified with mysql_native_password by 'password'; // password是你的密码,使用这条命令要重置密码
flush privileges;

查看命令是否生效

mysql> use mysql  //先使用命令 use mysql
Database changed
mysql> select user,host,plugin from user where user='root';
+------+-----------+-----------------------+
| user | host      | plugin                |
+------+-----------+-----------------------+
| root | localhost | mysql_native_password |
+------+-----------+-----------------------+

本文标签: 解决方案错误CLIENTmysqlSupport