当前位置: 首页
网络安全
MySQL root密码破解的多种方法

MySQL root密码破解的多种方法

热心网友 时间:2026-07-19
转载

在网上流传着不少关于 MySQL root 密码重置 的方法,今天我将系统梳理并汇总几种主流方案,方便大家遇到 MySQL 忘记密码 或其他密码管理问题时对照使用。 先从最简单的方案说起。 方法一:借助 phpMyAdmin 修改密码 这算是最省事的途径。直接登录 phpMyAdmin,找到 mys

在网上流传着不少关于 MySQL root 密码重置 的方法,今天我将系统梳理并汇总几种主流方案,方便大家遇到 MySQL 忘记密码 或其他密码管理问题时对照使用。

先从最简单的方案说起。

方法一:借助 phpMyAdmin 修改密码

这算是最省事的途径。直接登录 phpMyAdmin,找到 mysql 库里的 user 表,修改对应 root 用户的密码字段即可。一个小提醒:务必使用 PASSWORD() 函数加密,否则密码以明文存储,登录时系统会无法识别。

方法二:mysqladmin 命令行工具修改密码

这个其实是前面方法的一个特例——只用一条命令就能搞定:

mysqladmin -u root -p password mypasswd

执行后系统会提示输入原密码,然后 root 密码就被改为 mypasswd。将命令里的 root 换成其他用户名,即可更改相应用户的密码。

当然,局限性也很明显:如果你的 mysqladmin 无法连接 MySQL 服务器,或者你根本没有执行该命令的权限(比如权限受限),那么这条路就走不通。另外注意,mysqladmin 无法将密码直接清空,它只支持修改为非空值。

下面几种方法都需要在 MySQL 命令行提示符下操作,并且必须拥有 root 权限。

方法三:INSERT 语句增加用户

INSERT INTO mysql.user (Host,User,Password) VALUES('%','jeffrey',PASSWORD('biscuit'));
FLUSH PRIVILEGES;

严格来说这不是修改 root 密码,而是在增加一个用户。不过《MySQL 中文参考手册》里将其作为示例,我也在此列出。注意密码字段必须使用 PASSWORD() 函数,修改后还需执行 FLUSH PRIVILEGES 使权限表生效。

方法四:REPLACE 语句

思路与上面相同,只是将 INSERT 换成了 REPLACE

REPLACE INTO mysql.user (Host,User,Password) VALUES('%','jeffrey',PASSWORD('biscuit'));
FLUSH PRIVILEGES;

效果类似,同样要求使用 PASSWORD()FLUSH

方法五:SET PASSWORD 语句

SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit');

这个语法更简洁。注意仍然需要使用 PASSWORD() 函数,但好消息是不再需要执行 FLUSH PRIVILEGES,因为 SET PASSWORD 会自动触发权限刷新。

方法六:GRANT 语句

GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';

这里 PASSWORD() 函数反而用不上了,IDENTIFIED BY 后面直接跟明文密码,MySQL 内部会自动加密。同样不需要 FLUSH PRIVILEGES

需要特别说明:MySQL 的 PASSWORD() 函数加密方式与 Unix 系统的口令加密截然不同,切勿混为一谈。


前面介绍的是常规操作。但实际工作中最常遇到的场景是——密码遗忘,该怎么办?下面就是 MySQL 忘记 root 密码的解决方案

Linux/Unix 下的救援流程

  1. 如果 MySQL 正在运行,先杀掉进程:
    killall -TERM mysqld
    
  2. 跳过权限检查启动:
    bin/safe_mysqld --skip-grant-tables &
    
  3. 此时无需密码即可直接连接 MySQL:
    use mysql;
    update user set password=password("new_pass") where user="root";
    flush privileges;
    
  4. 杀掉 mysqld 进程,然后以正常模式启动即可。

Windows 下的救援流程

  1. 以系统管理员身份登录。
  2. 停止 MySQL 服务。
  3. 打开命令提示符,进入 MySQL 安装目录的 bin 目录。
  4. 跳过权限检查启动:
    mysqld-nt --skip-grant-tables
    
  5. 另外打开一个命令窗口,进入同样的目录,执行:
    mysqladmin -u root flush-privileges password "newpassword"
    mysqladmin -u root -p shutdown
    
    第二步会提示输入新密码,重复一遍。
  6. 停止 MySQL 服务(此时已经停掉),用正常模式重新启动。
  7. 用新密码连接即可。

另一种思路:直接替换 user 表文件

MySQL 的密码存储在 mysql 库的 user 表中,对应的文件有三个:user.frm(表结构)、user.MYD(数据)、user.MYI(索引)。如果你手头有另一台知道密码的 MySQL(比如 Windows 版本的),将它的 user.MYD 文件拷贝过来覆盖当前系统下的同名文件,然后重启 MySQL,就能用那个已知密码登录了。

覆盖后需要注意权限问题。在 Linux 下,文件属主可能会变成 root,需要手动改回来:

chown -R mysql:mysql /var/lib/mysql/mysql/user.*
chmod 600 /var/lib/mysql/mysql/user.*

然后重启 MySQL,再执行密码修改:

use mysql;
update user set Password=PASSWORD('xxxxxx') where User='root';
flush privileges;

额外提一句:如果 Windows 下 MySQL 是默认配置,可能还存在匿名用户和通配符主机用户,最好一并清理:

delete from user where User='';
delete from user where Host='%';
flush privileges;

终极手段:直接编辑 user.MYD 文件

这是比较硬核的方法。用十六进制编辑器(比如 UltraEdit)打开 user.MYD 文件,找到 root 用户对应的密码字段。将密码部分的 8 个字节改为特定的十六进制值——比如 56 54 91 d7 04 01 32 45 对应的明文是 123456。或者改成 00 02 02 02 02 02 02 02,这就是空密码(编辑器右边会显示成星号堆积)。改完后保存,重启 MySQL,用 root 和新密码登录即可。

这种方法的好处是不用修改文件属主和权限,但前提是你得知道明文和加密串的对应关系,或者能拿到另一个已知密码的 user.MYD 文件作为参考。

以上几套方案覆盖了从图形界面到命令行、从正常修改到暴力破解的各种场景。实际工作中遇到密码遗失,优先推荐使用 --skip-grant-tables 那条路径,通用性强,操作也最为安全。

来源:https://www.jb51.net/hack/5079.html

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
Debian Extract 是否支持加密传输

Debian Extract 是否支持加密传输

在日常维护 Debian 系统的过程中,用户经常需要从系统中提取文件,或与远程服务器进行数据交换。此时,加密传输便成为一个不可回避的话题——不过需要先澄清一个细节:所谓的“Debian Extract”并非 Debian 中某个现成的命令或工具,更多时候指的是“提取文件或数据”这一行为(例如使用 t

时间:2026-07-21 06:35
Linux系统安全漏洞利用原理详解与实战案例分析

Linux系统安全漏洞利用原理详解与实战案例分析

Linux系统的漏洞利用,说白了就是攻击者抓住了系统或应用里的某个安全短板。这些短板一旦被揪住,就可能让攻击者在未授权的情况下搞点事情。下面就来拆解一下,漏洞到底是怎么被一步步利用起来的。 1 漏洞发现 代码审计:翻源代码或二进制文件,眼睛盯着那些容易出问题的角落。 自动化扫描:像Nmap、Nes

时间:2026-07-21 06:35
GPG开源加密工具完整使用教程从入门到精通

GPG开源加密工具完整使用教程从入门到精通

GPG是开源加密工具,通过公钥实现安全文件传输。使用步骤包括安装、生成密钥对(选择类型、长度、有效期及密码),加密文件并发送,接收方导入公钥后解密。初次操作需耐心完成配置。

时间:2026-07-21 06:34
单位电子文件防外传及保密数据防复制方法

单位电子文件防外传及保密数据防复制方法

公司建立了ISO9001质量管理体系,涉及二三十个职能部门,工作中最头疼的问题就是参与人数太多。电子版文件流通速度快,但受控却相当困难,外传风险大,还容易被相互复制。那么,怎么才能有效禁止项目成员随意外传电子版文件呢?要堵住文件外传的漏洞,核心思路可以从三方面入手:首先,禁止电脑随意连接USB存储设

时间:2026-07-21 06:33
共享文件权限设置:指定用户与部门访问及隐藏无权限

共享文件权限设置:指定用户与部门访问及隐藏无权限

在企业共享文件管理场景中,有一个非常常见的需求:仅允许本部门员工访问自己部门的共享文件夹,其他部门的员工要么完全没有权限,要么连文件夹都看不到。如何实现这一目标?目前主要有两种主流方案。 第一种方案:借助第三方共享文件权限管理工具来实现。 例如,市面上有一些专业的共享文件权限设置软件,安装到文件服务

时间:2026-07-21 06:33
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 热门数据榜