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

获取新密码md5值

wordpress的密码存在数据库中的密码并不是明文密码,旧方法是使用密码的MD5值,破解难度较大,但只要电脑算力足够,破解出来也是时间问题可由新密码通过此命令得到新密码的MD5值:

1echo -n 新密码 | md5sum

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

更改密码

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

1mysql -uroot -p

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

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

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

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

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

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

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