一、设置用户的登录密码的plugin为mysql_native_password。(反正设置成这样就可以正常用第三方软件用 用户名密码登录了)

因为mysql8.0之后移除了password()函数,所以要修改密码的话,直接在mysql命令行输入

SET PASSWORD FOR 'root'@'localhost' = '123';

 (什么!你说你都没进入mysql终端啊,那看下面的标题二)

虽然,mysql8.0之后将password字段改为了authentication_string,但是如上代码仍然可以直接修改authentication_string字段,是没问题的。

这时,用户名密码登录仍然报错!如下

 原因可能是我们设置的密码还只是在缓存吧

 plugin字段的值是caching_sha2_password,还是报以下错误,

 当把root用户的localhost主机的plugin改为mysql_native_password时,我们再次登录

 

 就登录成功了!

二、进入MySQL终端失败的原因

还有如果dos(一定要用管理员权限进入)下输入mysql进入不去,是因为需要密码才能进入,

 所以我们可以输入 

mysql -u root -p

然后输入密码

 这样就进入了!

最后,FLUSH PRIVILEGES;   (刷新权限)

mysql> FLUSH PRIVILEGES;

除此之外,还有可能就是你的my.ini没有配置好,里面的路径配置对不对;mysql是否加入到环境变量;

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐