通过SQL重置Wordpress密码?

时间:2010-06-30 15:08:40

标签: wordpress

我如何直接在数据库中更改Wordpress用户的密码?我注意到它不仅仅是一个md5密码。开头有一个$P$B

谢谢,

5 个答案:

答案 0 :(得分:10)

我是这样做的:

UPDATE wp_users SET user_pass= MD5('enter-your-new-password-here') WHERE ID = 1;

注意:您可能需要更改用户的ID。

然后,您可以查看它:

 SELECT * FROM wp_users;

现在,密码不会有WordPress格式,但WordPress会把它理解为MD5,而且一切都很棒!

答案 1 :(得分:9)

自v2.5起,WordPress使用phpass而非md5()在数据库中存储散列密码。

但是,我认为您仍然可以使用标准MD5哈希重置MySQL中的密码。再次登录后,WordPress将使用新算法“升级”存储的哈希值。

答案 2 :(得分:5)

此处有命令行和phpmyadmin说明:Resetting Your Password « WordPress Codex

答案 3 :(得分:4)

使用wp_update_user功能,而不是运行SQL来更改密码。它将为您散列,破折号,斜线,猛击,崩溃和加密新密码! :)

示例:

wp_update_user(array('user_login'=>'johndoe','user_pass'=>'my_new_password'));

以下是可用“参数”的列表:

  • ID
  • user_login
  • user_url
  • user_pass
  • user_nicename
  • USER_EMAIL
  • user_registered
  • user_status
  • user_activation_key
  • DISPLAY_NAME

答案 4 :(得分:2)

如果您有权访问代码库,那么:

  • 导航至wp-includes / user.php。
  • 寻找功能" wp_authenticate_username_password"。
  • 在函数中查找以下行:

    Internal Storage/appdata/name.txt
  • 在此行之后,添加以下行:

    $user = get_user_by('login', $username);
    

注意:

  • 这要求用户名正确。

  • 请勿忘记将YOUR_USERNAME替换为您的用户名。

  • 登录后撤消更改。