如何重置 WordPress 管理员密码
失去对 WordPress 管理员账户的访问权限固然令人沮丧,但这是一个可以解决的问题。无论是您忘记了密码、重置邮件迟迟未送达,还是被锁定在一个没有可用邮件服务器的站点之外,总有一种方法适合您的情况。本指南介绍了四种可靠的 WordPress 管理员密码重置方法——按从最简单到最具技术性的顺序排列。
核心要点
- 始终从最简单的可用方法入手:如果您已登录,使用仪表盘重置;如果您能收到邮件,则使用”忘记密码?“链接。
- 对于拥有 SSH 访问权限的用户,WP-CLI 是最快、最安全的恢复选项,因为它使用了 WordPress 自身的哈希内部机制。
- 通过 phpMyAdmin 使用 MD5 值是一种最后手段的恢复方法;WordPress 会在您下次登录时自动将哈希升级为其当前的标准算法。
- 重新获得访问权限后,请审查您的用户列表,并启用双因素认证,以防止未来再次被锁定。
方法快速选择
| 您的情况 | 最佳方法 |
|---|---|
| 您已登录 | 仪表盘重置 |
| 您能收到邮件 | 忘记密码链接 |
| 您拥有 SSH 访问权限 | WP-CLI |
| 没有邮件,也没有 SSH | phpMyAdmin |
方法 1:从 WordPress 仪表盘重置
适用场景: 您已登录,只是想更新密码。
- 在管理菜单中前往 用户 → 个人资料。
- 滚动到 账户管理 部分。
- 点击 设置新密码。WordPress 会自动生成一个强密码。
- 如有需要,可替换为您自己的密码,然后点击 更新个人资料。
这是最干净的方法。无需数据库访问,无需任何工具——只需通过界面进行标准的密码更新。
方法 2:使用”忘记密码?“链接
适用场景: 您被锁定,但仍能通过账户绑定的邮箱地址收到邮件。
- 前往
yoursite.com/wp-login.php。 - 点击 忘记密码?
- 输入您的用户名或注册邮箱地址。
- 查看收件箱中的重置链接并点击。
- 设置新密码并登录。
如果邮件始终未送达,请先检查垃圾邮件文件夹。如果您的站点未配置为可靠地发送邮件,可以考虑安装 WP Mail SMTP——但若需立即恢复访问,请跳至方法 3 或方法 4。
Discover how at OpenReplay.com.
方法 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。
- 打开 phpMyAdmin 并选择您的 WordPress 数据库。
- 打开
wp_users表(前缀可能不同——请查看wp-config.php中的$table_prefix)。 - 找到您的管理员用户并点击 编辑。
- 在
user_pass字段中,清除现有的值。 - 以明文输入您的新密码,然后从函数下拉菜单中选择 MD5。
- 点击 执行 保存。
重要背景: 现代 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.