步骤:
1)管理员权限打开cmd,输入net stop mysql
(如果提示服务名无效,可以参考这里cmd中输入net start mysql 提示:服务名无效或者MySQL正在启动 MySQL无法启动)
2)修改C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
在[mysqld]之后,加上skip-grant-tables
(最后要将my.ini的编码格式保存为ANSI,否则后续步骤会报错;ProgramData默认是隐藏的)
3)添加环境变量
4)mysqld --skip-grant-tables --shared-memory
(–shared-memory必须加)
5)重新用管理员权限打开一个cmd,原来那个cmd不关闭,直接输入mysql
6)启动后,输入
flush privileges
use mysql
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123456’;
恭喜恭喜!复原后成功启动。