MySQL ERROR 1045 (28000) Access denied for user 解决办法
记得上次被MySQL教训还是在10年前,如今又一次被MySQL折腾一次。早9点开始到现在下午5点。总算是把MySQL装好在Windows10上了。
MySQL安装
https://dev.mysql.com/downloads/installer/
选择你要的版本安装即可
一切安装完成之后,通过CMD登录或者Navicat 登录会提示---date [ERROR] [MY-011084] [Server] Keyring migration failed.
---date [ERROR] [MY-010119] [Server] Aborting
于是跟着stackoverflow 开始操作
https://stackoverflow.com/questions/51448958/mysql-server-8-0-keyring-migration-error-at-login
跟着Sabito的操作可以直接在cmd中登录,但是当启动WindowsService再来用cmd登录的时候会出现以下错误
ERROR 1045 (28000) Access denied for user root@localhost (using password: YES)
解决办法
- 停止MySQL服务
- 新增一个文本文档命名为‘mysqlinit.txt’
在文档中写入以下内容ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'
将该文档拷贝到C: - CMD管理员权限进入MySQL Server 的 bin目录
在cmd窗口输入以下命令 然后回车
--defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" --init-file=C:\\mysqlinit.txt --console
等待命令执行完成,按Ctrl+C 退出CMD 并关闭 - 重新启动MySQL服务
这个时候就可以使用CMD或者Navicat 登录了
参考
How to Fix " access denied for user 'root'@'localhost' (using password: yes) " in MySQL Window 10
https://www.youtube.com/watch?v=8l2NUwm-OIk
mysql server 8.0 keyring migration error at login
https://stackoverflow.com/questions/51448958/mysql-server-8-0-keyring-migration-error-at-login