wordpress忘记密码重置

一直使用浏览器记录密码的方式登陆wordpress,直到有一天重装系统,而浏览器的记录又没有备份,结果怎么也想不起当初所设定的密码了…… -_-|||

遂google了一番,发现了直接修改数据库重设密码的方法。


方法一:通过邮件取回

前提是你的主机空间支持发送邮件,这样你就可以点击WordPress登录页面的“忘记密码?”按操作即可找到。

我尝试了用邮件密码找回的方式,却发现一直报mail() 函数不支持,说明我的空间不支持邮件发送功能,@_@

方法二:修改数据库重置密码

wordpress的密码是以md5的形式存储在数据库中,在我目前用的4.0版本中,管理员用户是存储在wp_users表中的。

我用的是云服务器,直接SSH到服务器,直接执行sql语句,对于购买VPS的朋友,可以借用phpmyadmin等工具

如果你忘记了数据库的登录名及密码,可以查看你网站根目录下的 wp-config.php,其以明文记录了相关的数据库连接信息。

执行sql语句:

update wp_users set user_pass=md5(‘your password’) where user_login=’your name';

例如,我的wordpress使用了“iThemes Security”这款安全插件,其将数据库前缀打乱了

先用

SHOW TABLES;

显示当前所有的table

wordpress忘记密码重置-1

找到对应的“wp_users”表

然后执行sql语句

update xxx_users set user_pass=md5(‘your password’) where user_login=’your name';

wordpress忘记密码重置-2

方法三:使用重置文件

如果你没办法登录SSH或使用phpMyadmin,那你也不用担心,将下面的代码另存为 reset_pw.php ,注意根据里面的注释修改 2-15行的相关信息(如果你不知道数据库的信息,可以查看你网站根目录下的 wp-config.php),然后通过FTP将 reset_pw.php 上传到网站根目录,在浏览器中访问这个文件,就会提示修改成功!使用完以后,记得删除 reset_pw.php ,以免存在安全隐患!

 

猛击这里下载:reset_pw.php

 

源码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?php
 
/*你的数据库服务器地址,一般保持默认*/
$servername = "localhost:3306";
 
/*数据库用户名*/
$phpMyadminUser = "root";
 
/*数据库密码*/
$phpMyadminKey = "yiduqiang";
 
/*数据库名称*/
$phpMyadminName = "test";
 
/*wordpress数据表格前缀*/
$QZ = "wp_";
 
/*你要设置的wordpress新密码*/
$NewKey = "yiduqiang";
 
/*你要设置新密码的用户名*/
$wordpress_User = "yiduqiang";
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>wordpress密码找回工具</title>
</head>
<body>
<?php
 
error_reporting(0);
 
if(!mysql_connect($servername,$phpMyadminUser,$phpMyadminKey))
{
    echo "对不起,数据库链接出错。<br />";
}
else
{
    echo "数据库链接成功。<br />";
    mysql_select_db($phpMyadminName,mysql_connect($servername,$phpMyadminUser,$phpMyadminKey));
 
    if (!mysql_query("update ".$QZ."users set user_pass='".md5($NewKey)."' where user_login='".$wordpress_User."'"))
    {
        echo "对不起,修改密码失败。";
    }
    else
    {
        echo "修改密码成功。";
    }
}
?>
</body>
</html>

原创文章,转载请注明: 转载自 http://www.mr-wu.cn/ 吴川斌的博客

本文链接地址: wordpress忘记密码重置 http://www.mr-wu.cn/how-to-reset-a-wordpress-password-from-sql/

posted @ 2014-10-08 22:17  吴川斌的博客  阅读(3501)  评论(1编辑  收藏  举报