方法:使用 mysqld_safe 以及 –init-file 参数重置root密码。
- 先停止MySQL服务:sudo systemctl stop mysql
- 创建一个包含密码重置命令的文件:echo “ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘new_password’;” > /tmp/mysql-init.sql,将new_password替换为你想要设置的新密码。
- 使用 mysqld_safe 以 –init-file 参数启动MySQL:sudo mysqld_safe –init-file=/tmp/mysql-init.sql &
- 等待MySQL服务启动并执行初始化文件中的命令,这个过程可能需要一些时间,具体取决于你的系统配置和性能。
- 删除初始化文件:rm /tmp/mysql-init.sql
- 停止mysqld_safe进程:ps -ef | grep mysqld_safe, kill 对应的进程号。
- 重启MySQL服务:sudo systemctl restart mysql
- 使用新密码登录试试:sudo mysql -u root -p
通过以上步骤,应该能够成功重置MySQL的root密码。