MySQL 4.1版本之前是MySQL323加密,MySQL 4.1和之后的版本都是MySQLSHA1加密,
MySQL数据库中自带Old_Password(str)和Password(str)函数,它们均可以在MySQL数据库里进行查询,前者是MySQL323加密,后者是MySQLSHA1方式加密。
(1)以MySQL323方式加密
select old_password('111111')
(2)以MySQLSHA1方式加密
select password('111111')
MYSQL323加密中生成的是16位字符串,而在MySQLSHA1中生存的是41位字符串,其中*是不加入实际的密码运算中,通过观察在很多用户中都携带了"*",在实际破解过程中去掉"*",也就是说MySQLSHA1加密的密码的实际位数是40位。
1、打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址
2、打开 cmd 命令提示符, 转到上一步中 mysql. exe 所在的文件夹。
3、输入命令 mysqld --skip-grant-tables 回车,此时就跳过了mysql的用户验证。注意: 输入此命令后, 无法 *** 作命令行, 您可以在此时打开一个新的命令行。注意: 在输入此命令之前, 请在任务管理器中结束 mysqld. exe 进程, 以确保 MySQL 服务器端已完成运行
4、更改root密码,输入update user set password=password('123456') where user='root' and host='localhost'
5、再次查看账户信息,select user,host,password from user 可以看到密码已被修改。
6、退出命令行, 重新启动 MySQL 数据库, 然后尝试使用新密码登录。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)