- 从服务中停止MySQL 8.0服务
- 管理员身份启动cmd
转到路径C:\Program Files\MySQL\MySQL Server 8.0\bin
- 运行 mysqld --console --skip-grant-tables --shared-memory
- 如果报Failed to set datadir to 'C:\Program Files\MySQL\MySQL Server 8.0\data\' (OS errno: 2 - No such file or directory),
运行 mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" --console --skip-grant-tables --shared-memory,不报错就跳过此步
- 第一个cmd保持不动,重新建立一个管理员身份启动的cmd
转到路径C:\Program Files\MySQL\MySQL Server 8.0\bin
- 运行以下命令
mysql -u root
select authentication_string,host from mysql.user where user='root';
UPDATE mysql.user SET authentication_string='' WHERE user='root';
flush privileges;
- 现在关闭两个cmd。尝试启动MySQL 8.0服务。修改密码为123456
管理员身份启动cmd
转到路径C:\Program Files\MySQL\MySQL Server 8.0\bin
mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
flush privileges;