Back

如何重置 WordPress 管理员密码

如何重置 WordPress 管理员密码

失去对 WordPress 管理员账户的访问权限固然令人沮丧,但这是一个可以解决的问题。无论是您忘记了密码、重置邮件迟迟未送达,还是被锁定在一个没有可用邮件服务器的站点之外,总有一种方法适合您的情况。本指南介绍了四种可靠的 WordPress 管理员密码重置方法——按从最简单到最具技术性的顺序排列。

核心要点

  • 始终从最简单的可用方法入手:如果您已登录,使用仪表盘重置;如果您能收到邮件,则使用”忘记密码?“链接。
  • 对于拥有 SSH 访问权限的用户,WP-CLI 是最快、最安全的恢复选项,因为它使用了 WordPress 自身的哈希内部机制。
  • 通过 phpMyAdmin 使用 MD5 值是一种最后手段的恢复方法;WordPress 会在您下次登录时自动将哈希升级为其当前的标准算法。
  • 重新获得访问权限后,请审查您的用户列表,并启用双因素认证,以防止未来再次被锁定。

方法快速选择

您的情况最佳方法
您已登录仪表盘重置
您能收到邮件忘记密码链接
您拥有 SSH 访问权限WP-CLI
没有邮件,也没有 SSHphpMyAdmin

方法 1:从 WordPress 仪表盘重置

适用场景: 您已登录,只是想更新密码。

  1. 在管理菜单中前往 用户 → 个人资料
  2. 滚动到 账户管理 部分。
  3. 点击 设置新密码。WordPress 会自动生成一个强密码。
  4. 如有需要,可替换为您自己的密码,然后点击 更新个人资料

这是最干净的方法。无需数据库访问,无需任何工具——只需通过界面进行标准的密码更新。

方法 2:使用”忘记密码?“链接

适用场景: 您被锁定,但仍能通过账户绑定的邮箱地址收到邮件。

  1. 前往 yoursite.com/wp-login.php
  2. 点击 忘记密码?
  3. 输入您的用户名或注册邮箱地址。
  4. 查看收件箱中的重置链接并点击。
  5. 设置新密码并登录。

如果邮件始终未送达,请先检查垃圾邮件文件夹。如果您的站点未配置为可靠地发送邮件,可以考虑安装 WP Mail SMTP——但若需立即恢复访问,请跳至方法 3 或方法 4。

方法 3:WP-CLI 密码重置(推荐给开发者)

适用场景: 您拥有服务器的 SSH 访问权限。这是恢复 WordPress 管理员账户最快、最可靠的方式,且无需直接操作数据库。

# List users to confirm the username or ID
wp user list

# Reset by username
wp user update admin --user_pass="YourNewPassword123!"

# Or reset by user ID
wp user update 1 --user_pass="YourNewPassword123!"

WP-CLI 使用 WordPress 自身的内部机制正确处理密码哈希,因此无需手动生成哈希值。您可以查阅官方的 WP-CLI user update 文档 以了解更多选项。

安全提示: 作为内联参数传递的密码可能会出现在 shell 历史记录或进程日志中。在可能的情况下,尤其是在共享系统上,建议优先使用基于交互提示的工作流或生成的密码。

方法 4:通过 phpMyAdmin 重置(数据库恢复)

适用场景: 您无法访问邮件也没有 SSH,但能通过主机控制面板访问 phpMyAdmin。

  1. 打开 phpMyAdmin 并选择您的 WordPress 数据库。
  2. 打开 wp_users 表(前缀可能不同——请查看 wp-config.php 中的 $table_prefix)。
  3. 找到您的管理员用户并点击 编辑
  4. user_pass 字段中,清除现有的值。
  5. 以明文输入您的新密码,然后从函数下拉菜单中选择 MD5
  6. 点击 执行 保存。

重要背景: 现代 WordPress 使用更强的哈希算法(如 bcrypt)来存储密码。直接写入 MD5 哈希是一种恢复手段,并非首选工作流。WordPress 会在您下次登录时检测到 MD5 格式,并自动将哈希升级为其当前的标准算法。之后,请通过仪表盘再次修改密码,以确保其被正确存储。

您还可以查阅官方的 WordPress 密码重置文档 了解其他恢复方法。

重新获得访问权限后

重新登录后,请花几分钟时间:

  • 如果您使用了数据库方法,请通过仪表盘再次修改密码。
  • 用户 → 所有用户 下确认没有被添加未经授权的管理员账户。
  • 考虑使用 WP 2FA 等插件启用双因素认证。

结语

被锁定的情况很少是永久的。从您可用的最简单方法开始,仅在必要时才向下尝试列表中的其他方法。对于拥有服务器访问权限的用户,WP-CLI 是最高效的路径;而在没有服务器访问权限时,phpMyAdmin 仍是可靠的备选方案。无论选择哪种方式,请务必通过仪表盘进行正式的密码重置,并执行一次快速的安全审查,确保您的账户始终归您所有。

常见问题解答

MD5 技巧仅在 WordPress 从 user_pass 列读取原始 MD5 字符串并将其识别为遗留哈希时才有效。如果您粘贴哈希时未在 phpMyAdmin 中选择 MD5 函数,或者该值包含额外的空格或引号,WordPress 会将其视为无效的遗留哈希。请始终粘贴纯文本密码,并从函数下拉菜单中选择 MD5。

作为一次性恢复手段是安全的,但不应作为常规操作。直接的数据库编辑会绕过 WordPress 钩子,因此跟踪密码变更或强制执行策略的插件不会运行。重新获得访问权限后,请通过仪表盘登录并再次重置密码,以便存储正确的 bcrypt 哈希,同时确保任何安全插件都能正确记录该事件。

WP-CLI 必须在 WordPress 根目录下运行,即 wp-config.php 所在的位置。请先 cd 到该目录,或使用 --path 标志显式传入路径,例如:wp user update admin --user_pass='NewPass123!' --path=/var/www/html。同时请确认运行 WP-CLI 的系统用户对 wp-config.php 拥有读取权限。

将管理员凭据保存在密码管理器中,保留一个备用管理员账户以防主账户被泄露,并配置可靠的 SMTP 服务以确保重置邮件能够送达。启用双因素认证可以增加保护,但请同时将备份代码离线保存,以防设备丢失导致无法恢复访问。

Gain Debugging Superpowers

Unleash the power of session replay to reproduce bugs, track slowdowns and uncover frustrations in your app. Get complete visibility into your frontend with OpenReplay — the most advanced open-source session replay tool for developers. Check our GitHub repo and join the thousands of developers in our community.

OpenReplay