这个问题本人深有体会,那么下面直接步入正题。
提前说名:本人mysql版本 8.0以上
以下所有操作均通过管理员打开cmd
一、前提
1、 先判断文件中是否存在mysqld服务,运行如下命令,如果没有报错,则你可以直接跳到 步骤
2、 如果你报错了,那么请按照如下过程进行配置
再执行一下mysqld ,如果没有报错,则ok啦
二、步骤
1、关闭mysql服务
net stop mysql80
2、由于现在我们已经忘记了密码,但我们仍然拥有root权限,所以我们可以通过mysqld设置一下登录权限===>root可以跳过密码验证直接进入数据库
mysqld --console --skip-grant-tables --shared-memory
此时光标一直闪烁,感觉卡主了,别慌,这是正常执行成功了,我们再开启一个新的终端cmd(管理员打开)
3、运行如下指令可以直接进入mysql
4、然后设置当前root用户的新密码为123
先在mysql里面执行
flush privileges;
再执行修改密码指令
set password for root@localhost = '123';
5、运行exit退出上面的mysql,重新启动mysql服务
net start mysql80
6、重新登录
mysql -uroot -p123
就可以登录成功了