首页 数据库 mysql教程 讲解几种破解MySQL数据库root密码的方法_MySQL

讲解几种破解MySQL数据库root密码的方法_MySQL

Jun 01, 2016 pm 01:47 PM
密码

bitsCN.com

几种破解mysql root密码的几种方法:


方法一


使用phpmyadmin,这是最简单的了,修改mysql库的user表,不过别忘了使用PASSWORD函数。


方法二


使用mysqladmin,这是前面声明的一个特例。


mysqladmin -u root -p password mypasswd


输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。


把命令里的root改为你的用户名,你就可以改你自己的密码了。


当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,那么这种方法就是无效的,而且mysqladmin无法把密码清空。


下面的方法都在mysql提示符下使用,且必须有mysql的root权限:


方法三


mysql> Insert INTO mysql.user (Host,User,Password)


VALUES(’%’,’jeffrey’,PASSWORD(’biscuit’));


mysql> FLUSH PRIVILEGES


确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。


在《mysql中文参考手册》里有这个例子:


注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。


方法四


和方法三一样,只是使用了REPLACE语句


mysql> REPLACE INTO mysql.user (Host,User,Password)


VALUES(’%’,’jeffrey’,PASSWORD(’biscuit’));


mysql> FLUSH PRIVILEGES


方法五


使用SET PASSWORD语句,


mysql> SET PASSWORD FOR " = PASSWORD(’biscuit’);


拟也必须使用PASSWORD()函数,但是不需要使用FLUSH PRIVILEGES。


方法六


使用GRANT ... IDENTIFIED BY语句


mysql> GRANT USAGE ON *.* TO " IDENTIFIED BY ’biscuit’;


这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。


注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。


MySQL 忘记口令的解决办法


如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。


启动 MySQL :bin/safe_mysqld --skip-grant-tables &


就可以不需要密码就进入 MySQL 了。


然后就是


>use mysql


>update user set password=password("new_pass") where user="root";


>flush privileges;


重新杀 MySQL ,用正常方法启动 MySQL 。


mysql密码清空


Windows:


1.用系统管理员登陆系统。


2.停止MySQL的服务。


3.进入命令窗口,然后进入MySQL的安装目录,比如我的安装目录是c:mysql,进入C:mysqlin


4.跳过权限检查启动MySQL,


c:mysqlin>mysqld-nt --skip-grant-tables


5.重新打开一个窗口,进入c:mysqlin目录,设置root的新密码


c:mysqlin>mysqladmin -u root flush-privileges password "newpassword"


c:mysqlin>mysqladmin -u root -p shutdown


将newpassword替换为你要用的root的密码,第二个命令会提示你输入新密码,重复第一个命令输入的密码。


6.停止MySQL Server,用正常模式启动Mysql


7.你可以用新的密码链接到Mysql了。


Unix&Linux:


1.用root或者运行mysqld的用户登录系统;


2.利用kill命令结束掉mysqld的进程;


3.使用--skip-grant-tables参数启动MySQL Server


shell>mysqld_safe --skip-grant-tables &


4.为设置新密码


shell>mysqladmin -u root flush-privileges password "newpassword"


5.重启MySQL Server


mysql修改密码


mysql修改,可在mysql命令行执行如下:


mysql -u root mysql


mysql> Update user SET password=PASSWORD("new password") Where user=’name’;


mysql> FLUSH PRIVILEGES;


mysql> QUIT


教你如何将MySQL数据库的密码恢复


因为MySQL密码存储于数据库mysql中的user表中,所以只需要将我windows 2003下的MySQL中的user表拷贝过来覆盖掉就行了。


在c:mysqldatamysql(linux 则一般在/var/lib/mysql/mysql/)目录下有三个user表相关文件user.frm、user.MYD、user.MYI


user.frm //user表样式文件


user.MYD //user表数据文件


user.MYI //user表索引文件


为保险起见,三个都拷贝过来,不过其实如果之前在要恢复的那个MySQL上没有更改过表结构的话,只要拷贝user.MYD就行了


然后


#. /etc/rc.d/init.d/mysql stop


#. /etc/rc.d/init.d/mysql start


#mysql -u root -p XXXXXX


好了,可以用windows 2003下mysql密码登陆了


mysql>use mysql


mysql>update user set Password=PASSWORD(’xxxxxx’) where User=’root’;


这时候会出错,提示user表只有读权限


我分析了一下原因,只这样的,因为user.*文件的权限分配是windows 2003下的,在windows 2003下我ls -l一看权限是666


在linux下我一看,拷过来后权限变成了600(其实正常情况下600就行了,只不过这里的文件属主不是mysql,拷过来后的属主变为了root,所以会出现权限不够,这时候如果你改成权限666则可以了,当然这样不好,没有解决问题的实质),在/var/lib/mysql/mysql/下ls -l看了一下再


#chown -R mysql:mysql user.*


#chmod 600 user.*


//OK,DONE


重起一下MYSQL


重新连接


mysql>use mysql


mysql>update user set Password=PASSWORD(’xxxxxx’) where User=’root’;


mysql>FLUSH PRIVILEGES;


有一点值得注意:如果你windows 下mysql如果是默认配置的话,注意要还要执行


mysql>delete from user where User=’’;


mysql>delete from user where Host=’%’;


mysql>FLUSH PRIVILEGES;


好了,到这里恢复密码过程就完成了


这个方法么就是有点局限性,你必须也具备另外的user表文件


其他还有几种方法


其它方法一(这个是网上流传较广的方法,mysql中文参考手册上的)


1. 向mysqld server 发送kill命令关掉mysqld server(不是 kill -9),存放进程ID的文件通常在MYSQL的数据库所在的目录中。


killall -TERM mysqld


你必须是UNIX的root用户或者是你所运行的SERVER上的同等用户,才能执行这个操作。


2. 使用`--skip-grant-tables’ 参数来启动 mysqld。 LINUX下:


/usr/bin/safe_mysqld --skip-grant-tables , windows下c:mysqlinmysqld --skip-grant-tables


3. 然后无密码登录到mysqld server ,


>use mysql


>update user set password=password("new_pass") where user="root";


>flush privileges;


你也可以这样做:


mysqladmin -h hostname -u user password ’new password’’


4. 载入权限表:

mysqladmin -h hostname flush-privileges’


或者使用 SQL 命令


FLUSH PRIVILEGES’


5.killall -TERM mysqld


6.用新密码登陆


其它方法二


直接用十六进制编辑器编辑user.MYD文件


不过这个里面我要说明一点,我这里编辑的时候发现个问题,加密的密码串有些是连续存储的,有些的最后两位被切开了,后两位存储在后面其他地方.这一点我还没想明白.还有注意一点就是编辑的是加密过的密码串,也就是说你还是需要另外有user表文件。这种方法和我最上面介绍的方法的区别在于,这种方法直接编辑linux下的user表文件,就不需要重新改文件属主和权限了


修正一下:我在Windows下的实际操作如下


1.关闭正在运行的MySQL。


2.打开DOS窗口,转到mysqlin目录。


3.输入


mysqld-nt --skip-grant-tables


回车。如果没有出现提示信息,那就对了。


4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysqlin目录。


5.输入mysql回车,如果成功,将出现MySQL提示符 >


6. 连接权限数据库


>use mysql;


(>是本来就有的提示符,别忘了最后的分号)


6.改密码:


> update user set password=password("123456") where user="root"; (别忘了最后的分号)


7.刷新权限(必须的步骤)


>flush privileges;


8.退出


> q


9.注销系统,再进入,开MySQL,使用用户名root和刚才设置的新密码123456登陆。


据说可以用直接修改user表文件的方法:


关闭MySQL,Windows下打开Mysqldatamysql,有三个文件user.frm,user.MYD,user.MYI找个 bitsCN.com

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

win11提示若要继续,请输入管理员用户名和密码怎么解决? win11提示若要继续,请输入管理员用户名和密码怎么解决? Apr 11, 2024 am 09:10 AM

当使用Win11系统时,有时候会遇到需要输入管理员用户名和密码的提示,本文将探讨在遇到这种情况时应该如何处理。方法一:1、点击【Windows徽标】,然后按【Shift+重启】进入安全模式;或者这样进入安全模式:点击开始菜单,选择设置。选择“更新和安全”;选择“恢复”中的“立即重启”;重启进入选项后选择——疑难解答——高级选项——启动设置—&mdash

如何使用手机设置路由器WiFi密码(以手机为工具) 如何使用手机设置路由器WiFi密码(以手机为工具) Apr 24, 2024 pm 06:04 PM

无线网络已经成为人们生活中不可或缺的一部分、在当今数字化的世界中。保护个人无线网络的安全性却显得尤为重要、然而。设置一个强密码是确保你的WiFi网络不被他人侵入的关键。保障你的网络安全,本文将详细介绍如何使用手机来修改路由器WiFi密码。1.打开路由器管理页面-在手机浏览器中打开路由器管理页面、通过输入路由器的默认IP地址。2.输入管理员用户名和密码-以获得访问权限,在登录页面中输入正确的管理员用户名和密码。3.导航到无线设置页面-查找并点击进入无线设置页面,在路由器管理页面中。4.找到当前Wi

如何为您的Microsoft帐户使用Passkey 如何为您的Microsoft帐户使用Passkey Feb 19, 2024 am 11:03 AM

Passkey是一种更高级和安全的登录方式,可与Microsoft账户一起使用。本文将指导您如何在Microsoft账户中使用Passkey,介绍其优势以及与密码的区别。在深入细节之前,我们强调,如果您经常忘记密码或需要快速登录,Passkey通常会更适合您。什么是Passkey?它们与密码有什么不同?密码是一种高级且安全的身份验证方式,可以代替传统的密码登录方式。每个应用程序都有独特的密钥,确保安全性,防止网络钓鱼等威胁。用户可以通过电子邮件和密码确认身份,也可使用面部识别、指纹或安全密钥进行

密码不正确,小心BitLocker警告 密码不正确,小心BitLocker警告 Mar 26, 2024 am 09:41 AM

本文将探讨如何解决密码错误的问题,特别是在处理BitLocker警告时需要小心。当在BitLocker中多次输入错误密码以解锁驱动器时,就会触发这个警告。通常,这个警告出现是因为系统设定了限制错误登录尝试的策略(通常是允许3次登录尝试)。在这种情况下,用户会收到相应的警告信息。完整的警告信息如下:输入的密码不正确,请注意-连续输入错误密码会导致账户被锁定,这是为了保护您的数据安全。如果需要解锁账户,您将需要使用BitLocker恢复密钥。密码不正确,小心BitLocker警告当您登录计算机时收到

如何立即取消Windows 10的锁屏密码 如何立即取消Windows 10的锁屏密码 Jan 09, 2024 pm 03:33 PM

升级了win101909系统后,可能有的小伙伴们会有想要取消自己电脑锁屏密码的需求。如果不知道应该怎么做的话,小编觉得我们可以在电脑的设置窗口中找到账户选项,具体方法一起来看看吧。win101909如何取消锁屏密码:1、首先按Win+I打开设置界面。2、然后找到账户--登录选项,再进行如图设置即可。win101909取消开机密码登录的方法:1、在运行中执行regedit打开注册表,定位至如下路径:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\Cu

手机修改wifi密码教程(简单操作) 手机修改wifi密码教程(简单操作) Apr 26, 2024 pm 06:25 PM

无线网络已经成为我们生活中不可或缺的一部分、随着互联网的快速发展。为了保护个人信息和网络安全,定期更改wifi密码是非常重要的、然而。帮助大家更好地保护家庭网络安全,本文将为大家介绍如何利用手机修改wifi密码的详细教程。1.了解wifi密码的重要性wifi密码是保护个人信息和网络安全的道防线,在网络时代、了解其重要性可以更好地理解为什么需要定期修改密码。2.确认手机连接到wifi首先确保手机已连接到要修改密码的wifi网络上,在修改wifi密码之前。3.打开手机设置菜单进入手机的设置菜单、在手

Win10密码不满足密码策略要求咋办? 电脑密码不满足策略要求解决办法 Win10密码不满足密码策略要求咋办? 电脑密码不满足策略要求解决办法 Jun 25, 2024 pm 04:59 PM

在Windows10系统中,密码策略是一套安全规则,确保用户设置的密码符合一定的强度和复杂性要求,而系统提示您的密码不满足密码策略要求则通常意味着您的密码没有达到微软设定的复杂度、长度或字符种类的标准,那么这种情况要如何避免呢?用户们可以直接的找到本地计算机策略下的密码策略来进行操作就可以了,下面就一起来看看吧。不符合密码策略规范的解决方法修改密码长度:根据密码策略要求,我们可以尝试增加密码的长度,比如将原来的6位密码改为8位或更长。添加特殊字符:密码策略通常要求包含特殊字符,如@、#、$等。我

如何在Python中对密码进行哈希处理? 如何在Python中对密码进行哈希处理? Aug 26, 2023 pm 06:57 PM

保护用户密码是应用程序开发的一个重要方面。保护密码的最佳方法之一是利用哈希计算。散列是将纯文本密码转换为不可转换的固定长度字符序列的过程。在本文中,我们将研究如何在Python中对密码进行哈希处理,讨论其中的语言结构和计算。我们还将提供两个真实的可执行代码示例来演示不同的密码哈希方法。语法为了在Python中对密码进行哈希处理,我们将利用hashlib模块,它提供了不同的哈希算法。利用hashlib散列秘密短语的基本句子结构如下-importhashlibpassword="my_pa

See all articles