wordpress忘记管理员密码




wordpress博客如果忘记其他用户密码可以通过管理员账号登录,但是如果管理员密码忘记,后台就没办法改了,就只能通过修改数据库中存储的密码来修改。

获取新密码md5值

wordpress的密码存在数据库中的密码并不是明文密码,数据库中存储的值是MD5值,可由新密码通过此命令得到新密码的MD5值:

1
echo -n 新密码 | md5sum

wordpress的密码是通过MD5加密得到,但是反过来通过MD5值解密却不行,有些网站提供MD5解密不是真正的解密,只是通过碰撞得到,也就是说只要密码稍微复杂一点,比如加个符号或者大小写数字混合,揭秘难度将大大提升,甚至不能解密。

更改密码

得到密码的MD5值之后,运行mysql -uroot -p进入数据库,-u后面接用户名,回车之后输入密码即可进入:

1
mysql -uroot -p

选择wordpress数据库,数据库名称是开始搭建wordpress时设置的,使用use wordpress选择wordpress数据库:

1
2
3
4
MariaDB [(none)]> use wordpress
...
Database changed
MariaDB [wordpress]>

显示数据库里面的用户列表和密码,运行select user_login,user_pass from wp_users

1
2
3
4
5
6
7
8
MariaDB [wordpress]> select user_login,user_pass from wp_users;
+------------+------------------------------------+
| user_login | user_pass |
+------------+------------------------------------+
| wenjinyu | $P$BJfX9yYn624BIQEjkdeEYdg0Wf5I330 |
| wenjinyu2 | $P$BIxdeJALwvU1KE1SaG5KLkP3EjlLVB/ |
+------------+------------------------------------+
2 rows in set (0.00 sec)

然后将user_pass部分修改为新密码即可。比如 wenjinyu2 账号,密码改为 wenjinyu,通过加密得到MD5:15C9F67C83AC8F24440C8D10621BBED3,运行UPDATE wp_users SET user_pass = '15C9F67C83AC8F24440C8D10621BBED3' WHERE user_login = 'wenjinyu2';将密码改成wenjinyu:

1
2
3
MariaDB [wordpress]> UPDATE wp_users SET user_pass = '15C9F67C83AC8F24440C8D10621BBED3' WHERE user_login = 'wenjinyu2';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

WHERE是指定修改的行,运行结果1 row affected即表明有一个匹配项被修改。





评论