前提条件: 之前已经登录过root账号,忘记密码
1. 关闭 MySQL 服务
方式一: 以管理员的身份运行,cmd 执行语句: net stop Mysql 表示停止 Mysql 服务
方式二: 在启动cmd的地方输入services.msc从这里就可看到 MySQL 服务,我们可以在这里启动和关闭 MySQL 服务 .
2. 跳过授权表: 接方式一的顺序走,以管理员的身份运行,cmd
PS:既然要跳过授权表登录,那么就要搞清楚.登录的mysql账号和密码,他将信息储存在安装目录的data子目录下mysql表里面.
以管理员的身份运行,cmd下, 执行 mysqld --skip-grant-tables;
3. 再打开一个cmd 终端,记住不再是以管理员身份运行的了
验证是否跳过授权表,此时用root用户进行登录,密码为空,进行登录
4. 在登录了root用户的情况下,进行更改密码,刷新一下权限,然后退出:
设置密码 输入: update mysql.user set authentication_string=password("") where user="root" and host= "localhost" ;
PS: =password("")就将密码设置为空
刷新权限输入: flush privileges;
退出输入: exit
5. 加载授权表: 输入命令: tasklist |findstr mysql 加载授权表
6.以管理员的身份运行,cmd
输入: taskkill /F /PID 进程号