暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL密码破解

MetaThinking 2021-05-31
1557

       刚给客户装完新版本,昨天客户的运维着急忙慌打电话问我当时他输入的MySQL密码忘记了怎么办?这可是件比较头疼的事情,好多朋友也为此苦恼过,下面我把自己破解的过程记录下来,希望对朋友们能有所帮助。


1、首先关闭MySQL服务,这步是必须要做的,否则后面操作将无法生效,下面介绍两种方法:

(1)使用管理者权限启动cmd命令窗口,在命令窗口中输入“net stop mysql80”,如果提示MySQL:net start MySQL80:发生系统错误 5。拒绝访问。说明没有以管理员身份运行。


以管理员份运行即可成功,如下图所示:


(2)有的朋友不愿意使用命令,可以启动本地服务,找到MySQL服务,手动停止服务,win+r启动运行窗口,输入services.msc,或者此电脑上右键单机管理。


2、找到mysql安装目录下的bin文件夹,参考我的文件路径(这个是win10 系统下的8.0版本默认的安装路径)C:\Program Files\MySQL\MySQL Server 8.0\bin


3、在控制台窗口中进入mysql的bin文件夹下,在控制台输入 cd 空格 路径,比如:cd C:\ProgramFiles\MySQL\MySQL Server 8.0\bin


4.1、这一步着重强调,看完这步再执行,进入该路径文件后,运行该命令之前必须要确认在MySQL Server文件夹中存在一个data文件夹(如果有data文件夹则不用运行这串命令),如果没有则先运行这个命令mysqld --initialize-insecure --user=mysql

       等待命令执行片刻后便在MySQL Server目录下生成了一个data文件如果没有这个文件,下面的命令会报错,所以必须要确定这个文件是否存在。


4.2、以上条件满足之后,设置免密密码,在控制台中输入mysqld--shared-memory --skip-grant-tables

       运行后光标会滞停在第二行,而且窗口标题栏会显示出正在生效的命令,这个代表命令生效了,这个窗口不要关闭,放那里不用管就行了。


5、以上步骤完成后再打开一个命令窗口,在新的命令窗口进入mysql的bin目录下(跟前面进入bin目录操作一样),然后在新窗口内输入mysql,将跳过密码输入部分,直接进入数据库里面(如果提示输入密码直接回车即可进入数据库内)


6、进入mysql后,即可进行密码更改操作

设置为空密码updatemysql.user set authentication_string='' where user='root'  andhost='localhost';

修改新密码ALTER USER'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

这段代码在MySQL里面运行作用为将root用户的密码设置为123456


7、密码更改完后,进行权限刷新flush privileges;千万不要漏掉分号。


8、关闭命令端重启服务,之后便可以正常使用了。

文章转载自MetaThinking,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论