机器环境 Win10 x86 64 bits, MySQL 版本为 8.0.11.
忘记了root密码,打算采用–skip-grant-tables来跳过验证。先cd到安装的MySQL的bin目录,输入:
mysqld --skip-grant-tables
发现服务无法启动。后来才知道MySQL8版本还需要添加参数:--shared-memory
:
- 首先
net stop mysql
关闭当前MySQL服务 - 管理员模式打开Powershell,同样cd到MySQL的bin目录, 输入:
mysqld --shared-memory --skip-grant-tables
- 不要关闭上一个shell,另外打开一个shell,直接输入:
mysql -uroot -p
即可登录 - 习惯性刷新:
FLUSH PRIVILEGES;
- 修改密码:
ALTER USER ‘root'@'localhost' IDENTIFIED BY ‘yourpasswd;'
- 设置完成后,正常启动即可。