记得上次被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