1、先关闭已启动的 mysql 服务
关闭 mysql 服务有以下两种
- 在 window 服务中关闭:可以 win+r,输入
services.msc,找到 mysql 服务关闭 - 已命令方式关闭:管理员身份打开 CMD,输入
net stop mysql关闭服务
2、关闭 MySQL 登录密码验证
-
管理员身份打开 CMD,进入 MySQL 安装目录,我的安装目录 F:\mysql-8.0.29-winx64

-
跳过密码验证启动 MySQL:
mysqld --console --skip-grant-tables --shared-memory(如果 mysql 5.7 可输入 mysqld --skip-grant-tables)

如果启动报错,可以查看 MySQL 错误日志,路径为:F:\mysql-8.0.29-winx64\data\DESKTOP-HNCJIFN.err,应该是一个以 DESKTOP- 开头的文件
3、连接 MySQL
- 管理员身份新打开一个 CMD,
mysql -uroot -p,密码为空,直接按回车即可连接成功

4、将 root 密码置空
UPDATE mysql.user SET authentication_string="" WHERE user="root";

这个窗口不用关,下面修改密码命令可以在这个窗口执行
5、启动 MySQL 服务
修改密码前,关闭刚才通过 cmd 命令行启动的 mysqld (即就是那个启动 mysqld 免密认证服务),需要启动系统的 mysql 服务
启动系统服务,管理员进入 cmd,输入 net start mysql 启动服务

6、修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;

有可能会报用户不存在,可以将 localhost 改为 %
ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
如果嫌命令比较麻烦,可以直接使用客户端如 Navicat 连接 mysql,连接密码为空,连接成功选择指定用户修改

7、SQLyog 连接测试

MySQL root密码重置及服务启停教程
本文详细介绍了如何在Windows环境下关闭MySQL服务、跳过密码验证连接数据库、清空root密码以及设置新密码的步骤,包括使用命令行和SQL语句操作。最后通过SQLyog进行连接测试,确保密码修改成功。
391

被折叠的 条评论
为什么被折叠?



