Mysql8.0版本忘记密码(已解决)
今天心血来潮,想复习一下数据库知识,奈何却发现因荒弃太久,连数据库登录密码都搞忘记了,又嫌重装太麻烦,就毅然踏上了手动解决的不归路。
一开始搜了很多解决方法,有用mysqld --skip-grant-tables
,有修改my.ini
文件的,但统统无效!弄了整整一个下午,搞得我一个头两个大。就在我心灰意冷,准备放弃的时候,突然灵光一现,有可能是版本问题!因为之前搜索的关键词是“mysql忘记密码”,并没有带版本,所以得到的结果多半是5.7版本的。意识到这一点后,我把搜索关键词改为mysql8.0忘记密码,果然立竿见影,药到病除。现在带着愉悦的心情将此过程完整记录下来,以防日后再忘。
1. 关闭mysql服务
2. 以管理员模式打开命令提示符,并转到mysql/bin目录下
3. 命令行终端输入mysqld --shared-memory --skip-grant-tables
此时程序阻塞,光标会一直闪烁。
4. 新打开一个命令行终端,转到mysql/bin目录下,输入mysql
5.刷新权限: FLUSH PRIVILEGES;
6. 修改密码:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
7. 关闭所有命令行终端,重启服务
8. 打开命令行终端,使用新密码登录数据库
登录成功!以后妈妈再也不担心我忘记密码啦!