文章摘要: 忘记用户密码,重置密码解决方案。
注释
- 无密码状态root登录数据库。
- 用于在忘记密码的时候重置MySQL数据库。
- windows用户需要进入管理员模式。
- (命令行窗口01)关闭MySQL数据库服务器
# Linux系统命令
sudo systemctl stop mysql
# Windows系统命令(以管理员身份运行)
# 提示:服务名称可能因安装方式和版本而异(例如:MySQL80)
net stop "<服务名称>"
- (命令行窗口01)运行mysql服务,跳过权限检查
# 运行mysql服务,跳过权限检查
sudo mysqld_safe --skip-grant-tables &
# 运行上述一条命令后,需要持续处于运行状态
# 需要在新的命令行窗口,执行下面的操作
- (命令行窗口02)开启新的命令行窗口,进行重置密码
# 无需密码,直接通过root用户登录数据库
mysql -u root
# 为root用户设置新的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
# 刷新权限
FLUSH PRIVILEGES;
# 退出
EXIT;
- (命令行窗口01)手动关闭mysql的安全模式服务进程
注释
提示:若不会或没有成功,可以选择重启计算机即可。
# 关闭命令运行,并需要通过手动强制关闭进程服务
# 找到MySQL安全模式的服务进程ID
ps aux | grep mysqld_safe
# 关闭MySQL的安全模式服务进程
kill <进程ID>
- 启动mysql
# Linux系统命令
sudo systemctl start mysql
# Windows系统命令(以管理员身份运行)
# 提示:服务名称可能因安装方式和版本而异(例如:MySQL80)
net start <服务名称>
- 登录mysql
mysql -u root -p