
「MySQL8.0」ERROR 1045 (28000):Access denied for user 'ODBC'@'localhost'解决方案
我的 Windows 装了mysqld后,登录 MySQL 时就出现了报错提示:🤕

MySQL Workbench等其他软件也一样无法登录进我的数据库….
根据网上文章,可能是装完 mysqld 后导致密码发生了更改。(好家伙,我的密码明明就没动过….
接下来就需要我们重置 自己设置的MySQL数据库密码了。
我所装的 MySQL 版本号是8.0,其方法的差别在于第二点的SQL语句,已做区分。
¶一、设置跳过 MySQL 密码认证
跳过密码认证,我们就能成功登陆 MySQL,然后利用SQL重新设置用户的密码。
首先,找到 my.ini 文件,默认路径一般如下:

Ctrl+F 搜索 [mysqld],然后再其下方添加该语句:
1 | |

保存后,在CMD命令行,重启MySQL:
1 | |
¶二、登陆数据库修改密码
通过 CMD 登陆MySQL:(不用输入密码,直接回车!)
1 | |

接着,输入下列命令,以进入MySQL系统自带数据库mysql
1 | |
修改用户的密码:
注意,不同的MySQL版本,修改密码的语句或有差异!
如果你的MySQL是5.7以下的版本:
1
UPDATE mysql.user SET Password=PASSWORD('新密码') where USER='用户名';如果你的MySQL是5.7版本:
1
UPDATE mysql.user SET authentication_string=PASSWORD('新密码') where USER='用户名';如果你的MySQL是8.0版本:
重点来了!!MySQL 8.0后修改了修改密码的方式!
之前一直输入上面两条语句疯狂报错1
2ALTER USER '用户名'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
/*系统显示:Query OK, 0 rows affected (0.01 sec),表示成功!*/
接着刷新MySQL的系统权限相关表并退出。
1 | |
重新登录一波:

大功告成!!
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 JoyDee's Blog!
评论