答案:通过停止MySQL服务并以--skip-grant-tables模式启动,可无需原密码重置root密码。具体步骤为:1. 停止MySQL服务;2. 在bin目录下运行mysqld --skip-grant-tables启动无验证模式;3. 新窗口执行mysql -u root -p登录后,根据版本使用update user或ALTER USER语句修改密码;4. 重启服务后即可用新密码登录。操作需注意路径与版本差异。

如果你使用一键PHP环境(如phpStudy、WAMP、XAMPP等)搭建了本地服务器,但忘记了MySQL的root密码,可以通过以下方法重置密码。整个过程不需要原始密码,只需停止服务并以跳过权限验证的方式启动MySQL。
1. 停止MySQL服务
在操作前,必须先关闭正在运行的MySQL服务:
- 打开“服务”管理器(按 Win + R,输入 services.msc)
- 找到 MySQL 相关服务(如 mysql80、MySQL57 或 phpStudy-MySQL)
- 右键选择“停止”
或使用命令行(以管理员身份运行):
net stop mysql2. 跳过权限验证启动MySQL
进入MySQL的bin目录,用 --skip-grant-tables 参数启动,跳过密码验证:
立即学习“PHP免费学习笔记(深入)”;
- 常见路径如:D:\phpStudy\MySQL\bin 或 C:\xampp\mysql\bin
- 在该目录下打开命令提示符(Shift + 右键 → 在此处打开Powershell窗口)
- 执行以下命令:
此时MySQL已无密码启动,保持此窗口不要关闭。
3. 修改root用户密码
另开一个命令行窗口,连接MySQL并修改密码:
- 进入 bin 目录后执行: mysql -u root -p
- 提示输入密码时直接回车(因跳过了权限验证)
- 登录成功后,根据MySQL版本执行对应语句:
MySQL 5.7及以上版本:
use mysql;
update user set authentication_string=password('新密码') where user='root';
flush privileges;
quit;
MySQL 8.0+ 版本注意:推荐使用:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码'; flush privileges;
4. 重启MySQL服务
关闭之前运行 --skip-grant-tables 的窗口,然后正常启动MySQL服务:
- 通过服务管理器启动MySQL
- 或命令行输入: net start mysql
之后就可以用新密码登录phpMyAdmin或命令行了:
mysql -u root -p基本上就这些步骤。关键是跳过权限表启动,然后更新密码。操作时注意路径和MySQL版本差异,避免语法错误。只要一步步来,找回密码并不复杂。











