Linux--MySQL忘记密码时怎么办

本文详细介绍了在忘记MySQL超级用户(root)密码时,如何通过停止服务、修改配置文件、跳过权限验证来重置密码。步骤包括停止MySQL服务、编辑my.cnf配置文件、启动服务、登录并修改密码,以及最后恢复配置文件和重启服务。此方法在紧急情况下使用,避免了业务中断的损失。
摘要由CSDN通过智能技术生成

sc@mysql 14:47  mysql>alter user 'root'@'localhost' identifed by '123456';    ----》修改密码(修改root@localhsot超级用户的密码,使用另外一个管理员用户去修改)(普通用户直接在超级用户下用这条命令修改)

'root'@'localhost'  被修改密码的用户

 '123456'       修改的密码

本质上是修改mysql库里的user表里的对应的用户的auth_string

在超级用户密码忘记的时候,又没有别的管理员用户的时候,就只能修改停止MySQL服务--》中断业务

密码破解

        第一步:停止MySQL进程的运行

[root@localhost ~]# service mysqld stop

Shutting down MySQL.... SUCCESS!

[root@localhost ~]#

        第二步:修改配置文件

[root@localhost ~]# vim /etc/my.cnf
[mysqld]
user=mysql              #指定启动MySQL进程的用户
skip-grant-tables    #跳过密码验证
#validate-password=off    #需要禁用密码复杂性策略

        第三步:启动MySQL进程

[root@localhost ~]# service mysqld start
Starting MySQL.. SUCCESS! 
[root@localhost ~]# 

        第四步:登录MySQL,不接密码,输入密码时直接回车

[root@localhost ~]# mysql -uroot -p

        第五步:先刷新权限在修改密码

root@(none) 15:17  mysql>flush privileges;刷新权限(会加载原来没有加载权限表--》用户名和密码所在的表user等)
root@(none) 15:17  mysql>alter user 'root'@'localhost' identifed by '123456';

        第六步:重新修改MySQL的配置文件

[root@localhost ~]# vim /etc/my.cnf
[mysql]
socket=/data/mysql/mysql.sock
#user=mysql   -->注释掉
#skip-grand-tables   --->注释掉

        第七步:刷新服务

[root@localhost ~]# service mysqld restart
Starting MySQL.. SUCCESS! 
[root@localhost ~]# 

        第八步:验证密码修改是否成功、

[root@localhost ~]# mysql -uroot -p123456;

注:不是迫不得已不建议使用,停止服务会造成损失

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

‘༺༃修༒罗༃༻’

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值