在Mysql数据库出问题后,如果按照方法去解决,还不如直接删除重装,当然这里就要看自己的彻底删除MySQL数据库的方法对不对,后面成功彻底删除了MySQL数据库,配置好了MySQL数据库的系统环境变量,用Navicat软件连接MySQL数据库时,就弹出了一个1251报错问题。
翻译过来就是:客户端不支持服务器请求的认证协议,考虑升级MySQL客户端
但其实是加密规则的问题
出现这个原因是mysql8 之前的版本中加密规则是
mysql_native_password
,而在mysql8之后,加密规则是caching_sha2_password
解决办法:把mysql用户登录密码加密规则还原成mysql_native_password.
MySQL 的环境变量配置教程链接:如何配置MySQL数据库的系统环境变量问题
解决方法:
-
打开cmd命令窗口,输入命令
mysql -u root -p
打开MySQL数据库,然后输入root账号的密码进行登录。
-
在mysql中先更改加密方式
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
eg:
- 由于加密规则更改,所以需要重新设置密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
eg:
- 最后要刷新一下数据库
FLUSH PRIVILEGES;
eg:
这样我们再去连接MySQL服务时就可以成功连接了
参考链接: