[已解决]MySQL8.0.报 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

最近数据库莫名出现了本地数据库无法访问问题
之前数据库用的好好的,昨天突然出现了以下问题,我保证我的密码正确的,因为我练习经常用数据库,昨天不知道怎么了。。。。

图片.png
网上搜了好多解决方法,试了都不行,包括什么修改my.ini;
什么skip操作后无法跳过登录;
还有让进入MySQL修改密码的(我能进去还用你说咋修改?)。

第一步:关闭服务 net stop mysql 这个需要在管理员权限才行 ,具体怎么用管理员打开cmd略过

image

第二步:进入到安装的bin目录 执行 :mysqld --console --skip-grant-tables --shared-memory

image

这一步这些输出需要时这些,如果这一步有错误,需要自行处理掉 ,这个窗口执行完之后不要关闭,重新起一个新的cmd窗口

第三步:启动一个新的cmd窗口 执行 mysql -uroot -p 就能免密进入

第四步:修改密码:--没有截图哈

  1. use mysql;
    出现 Database changed

  2. update user set authentication_string='' where user='root'; 如果这个字段有值,先置为空
    出现 OK 等信息

  3. flush privileges; 刷新权限表
    出现 OK 等信息
    4.ALTER user 'root'@'localhost' IDENTIFIED BY 'root'; 修改root 密码
    出现 OK 等信息
    (注意后面的分号)

至此,终于解决了,感谢原文作者
原文链接:https://blog.csdn.net/qq_27820551/article/details/101488430

对于那些没有验证过就乱发,乱转载链接的人,我想说,你太过分了!!!

你可能感兴趣的:([已解决]MySQL8.0.报 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES))