仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 690|回复: 8
打印 上一主题 下一主题

[学习教程] 公布解说几种破解MySQL数据库root暗码的办法

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 20:08:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
”由于MySQL已经是一个运行了众多知名Web2.0网站的数据,包括Craigslist、Digg、Wikipedia和Google等,或许我们可以说每一个Web2.0公司实质上是一个使用MySQL数据库的公司。几种破解MySQLroot暗码的几种办法:

办法一

利用phpmyadmin,这是最复杂的了,修正mysql库的user表,不外别忘了利用PASSWord函数。

办法二

利用mysqladmin,这是后面声明的一个惯例。

mysqladmin-uroot-ppasswordmypasswd

输出这个命令后,必要输出root的原暗码,然后root的暗码将改成mypasswd。

把命令里的root改成你的用户名,你就能够改你本人的暗码了。

固然假如你的mysqladmin毗连不上mysqlserver,大概你没有举措实行mysqladmin,那末这类办法就是有效的,并且mysqladmin没法把暗码清空。

上面的办法都在mysql提醒符下利用,且必需有mysql的root权限:

办法三

mysql>InsertINTOmysql.user(Host,User,Password)

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

mysql>FLUSHPRIVILEGES

切实地说这是在增添一个用户,用户名为jeffrey,暗码为biscuit。

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

注重要利用PASSWORD函数,然后还要利用FLUSHPRIVILEGES。

办法四

和办法三一样,只是利用了REPLACE语句

mysql>REPLACEINTOmysql.user(Host,User,Password)

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

mysql>FLUSHPRIVILEGES

办法五

利用SETPASSWORD语句,

mysql>SETPASSWORDFOR[email=jeffrey@]jeffrey@"%[/email]"=PASSWORD(’biscuit’);

拟也必需利用PASSWORD()函数,可是不必要利用FLUSHPRIVILEGES。

办法六

利用GRANT...IDENTIFIEDBY语句

mysql>GRANTUSAGEON*.*TO[email=jeffrey@]jeffrey@"%[/email]"IDENTIFIEDBY’biscuit’;

这里PASSWORD()函数是不用要的,也不必要利用FLUSHPRIVILEGES。

注重:PASSWORD()[不是]以在Unix口令加密的一样办法实施口令加密。

MySQL健忘口令的办理举措

假如MySQL正在运转,起首杀之:killall-TERMmysqld。

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

就能够不必要暗码就进进MySQL了。

然后就是

>usemysql

>updateusersetpassword=password("new_pass")whereuser="root";

>flushprivileges;

从头杀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-urootflush-privilegespassword"newpassword"

c:mysqlin>mysqladmin-uroot-pshutdown

将newpassword交换为你要用的root的暗码,第二个命令会提醒你输出新暗码,反复第一个命令输出的暗码。

6.中断MySQLServer,用一般形式启动Mysql

7.你能够用新的暗码链接到Mysql了。

Unix&linux

1.用root大概运转mysqld的用户登录体系;

2.使用kill命令停止失落mysqld的历程;

3.利用--skip-grant-tables参数启动MySQLServer

shell>mysqld_safe--skip-grant-tables&

4.为[email=root@localhost]root@localhost[/email]设置新暗码

shell>mysqladmin-urootflush-privilegespassword"newpassword"

5.重启MySQLServer

mysql修正暗码

mysql修正,可在mysql命令行实行以下:

mysql-urootmysql

mysql>UpdateuserSETpassword=PASSWORD("newpassword")Whereuser=’name’;

mysql>FLUSHPRIVILEGES;

mysql>QUIT

教你怎样将MySQL数据库的暗码恢复

由于MySQL暗码存储于数据库mysql中的user表中,以是只必要将我windows2003下的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/mysqlstop

#./etc/rc.d/init.d/mysqlstart

#mysql-uroot-pXXXXXX

好了,能够用windows2003下mysql暗码上岸了

mysql>usemysql

mysql>updateusersetPassword=PASSWORD(’xxxxxx’)whereUser=’root’;

这时候候会堕落,提醒user表只要读权限

我剖析了一下缘故原由,只如许的,由于user.*文件的权限分派是windows2003下的,在windows2003下我ls-l一看权限是666

在linux下我一看,拷过去后权限酿成了600(实在一般情形下600就好了,只不外这里的文件属主不是mysql,拷过去后的属主变成了root,以是会呈现权限不敷,这时候候假如你改成权限666则能够了,固然如许欠好,没有办理成绩的本色),在/var/lib/mysql/mysql/下ls-l看了一下再

#chown-Rmysql:mysqluser.*

#chmod600user.*

//OK,DONE

重起一下MYSQL

从头毗连

mysql>usemysql

mysql>updateusersetPassword=PASSWORD(’xxxxxx’)whereUser=’root’;

mysql>FLUSHPRIVILEGES;

有一点值得注重:假如你windows下mysql假如是默许设置的话,注重要还要实行

mysql>deletefromuserwhereUser=’’;

mysql>deletefromuserwhereHost=’%’;

mysql>FLUSHPRIVILEGES;

好了,到这里恢复暗码历程就完成了

这个办法么就是有点范围性,你必需也具有别的的user表文件

其他另有几种办法

别的办法一(这个是网下流传较广的办法,mysql中文参考手册上的)

1.向mysqldserver发送kill命令关失落mysqldserver(不是kill-9),寄存历程ID的文件一般在MYSQL的数据库地点的目次中。

killall-TERMmysqld

你必需是UNIX的root用户大概是你所运转的SERVER上的一律用户,才干实行这个操纵。

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

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

3.然后无暗码登录到mysqldserver,

>usemysql

>updateusersetpassword=password("new_pass")whereuser="root";

>flushprivileges;

你也能够如许做:

mysqladmin-hhostname-uuserpassword’newpassword’’

4.载进权限表:
mysqladmin-hhostnameflush-privileges’

大概利用SQL命令

FLUSHPRIVILEGES’

5.killall-TERMmysqld

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.毗连权限数据库

>usemysql;

(>是原本就有的提醒符,别忘了最初的分号)

6.改暗码:

>updateusersetpassword=password("123456")whereuser="root";(别忘了最初的分号)

7.革新权限(必需的步骤)

>flushprivileges;

8.加入

>q

9.刊出体系,再进进,开MySQL,利用用户名root和方才设置的新暗码123456上岸。

听说能够用间接修正user表文件的办法:

封闭MySQL,Windows下翻开Mysqldatamysql,有三个文件user.frm,user.MYD,user.MYI找个晓得暗码的MySQL,交换响应的这三个文件,假如user表布局没悔改,一样平常也没人往改,交换user.MYD就能够了。

也能够间接编纂user.MYD,找个十六进制编纂器,UltraEdit就有这个功效。封闭MySQL,翻开user.MYD。将用户名root前面的八个字符改成565491d704013245,新暗码就是123456。大概将它们对应的十六进制数字,(右边那边,一个字符对应两个数字),改成0002020202020202,这就是空暗码,在编纂器右侧看到的都是星号*,看起来很象小数点。重开MySQL,输出root和你的新暗码。
列举选择MySQL的理由的最困难的地方在于,如何对这些理由进行排序。MySQL学习教程这就如同我们经常争论的故事:先有鸡还是先有蛋?
因胸联盟 该用户已被删除
沙发
发表于 2015-1-18 18:09:29 来自手机 | 只看该作者
呵呵,这就是偶想说的
若天明 该用户已被删除
板凳
发表于 2015-1-27 15:22:05 | 只看该作者
对递归类的树遍历很有帮助。个人感觉这个真是太棒了!阅读清晰,非常有时代感。
地板
发表于 2015-2-5 12:21:33 | 只看该作者
我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过!
简单生活 该用户已被删除
5#
发表于 2015-2-11 20:26:53 | 只看该作者
如安全管理、备份恢复、性能监控和调优等,SQL只要熟悉基本操作就可以,只要程序设计部分只要稍加了解即可(如存储过程、触发器等)。
第二个灵魂 该用户已被删除
6#
发表于 2015-3-2 18:51:19 | 只看该作者
但换公司用MSSQL2K感觉自己好像根本就不了解MSSQL。什么DTS触发器以前根本没用过。
乐观 该用户已被删除
7#
发表于 2015-3-11 05:57:37 | 只看该作者
你觉得我的非分区索引无法对起子分区,你可以提醒我一下呀!没有任何的提醒,直接就变成了非分区表。不知道这算不算一个bug。大家也可以试试。
再见西城 该用户已被删除
8#
发表于 2015-3-17 22:09:19 | 只看该作者
总感觉自己还是不会SQL
精灵巫婆 该用户已被删除
9#
发表于 2015-3-25 04:31:42 | 只看该作者
这就引发了对varchar和char效率讨论的老问题。到底如何分配varchar的数据,是否会出现大规模的碎片?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-2 23:07

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表