当前位置: 首页 > news >正文

【实战记录】使用 wp-cli 恢复/修改 WordPress 密码

内容概览:

  1. 使用 wp-cli 修改 WordPress 密码
  2. docker 常规操作(文件复制、执行 bash 等)


也是好久没写博客了,突发奇想想在自己的 WordPress 站点写一篇博文。

然后我惊讶的发现,我忘记密码了,更糟糕的是,出于安全考虑,我启用了这个:

0

汗流浃背了家人们(非常推荐各位安装一下这个插件,看后台这个插件已经帮我阻挡了很多暴力破解密码的尝试了)。

尝试了两次之后是彻底不敢动了,检索了一下重置密码的操作,大概分为以下几种方法:

  1. 使用 WordPress 自带的密码重置功能(需要提前做好发信配置)
  2. 修改数据库
  3. 修改 WordPress 的 php 文件
  4. 使用 wp-cli 工具进行修改

其实上述方法到最后都是修改数据库,直接或者使用工具间接的区别而已。

最简单的方法是1和4,2和3都需要直接进行破坏性操作,如果出现什么失误的话会很麻烦(已有的简单工具会比人可信)。但是我没有提前配置好邮件发送的配置,因此只能使用 wp-cli 了。

我的 WordPress 是使用 docker 部署的,理论上镜像中应该包括了 wp-cli,但是我实测确实容器内执行不了 wp 命令。因此我准备在主机中使用 wp-cli

wp-cli 下载地址:https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

我尝试用 curl 下载,但是下载太慢,因此挂梯子下载后上传至主机。

wp-cli 使用可参考:https://juejin.cn/post/7521250468267458611

在切换到 WordPress 站点的目录下尝试运行命令时出现了问题,报错:Error: Error establishing a database connection. MySql我可以确定服务运行正常,因此是连接时出现的问题。

使用命令 cat wp-config.php | grep DB_ 检查 wp-cli 使用的数据库配置,发现了问题。上文提到了我的站点使用 docker 进行部署的,而我的 MySQL 也是用 docker 部署的,因此在站点的数据库配置中使用了别名而非 IP 地址或主机名。因此想要在本机上使用 wp-cli 会很麻烦(我的原则是尽量不修改已有的东西,实际上可以临时修改配置来实现访问)。

最终的解决方案是将 wp-cli 的文件通过 docker 命令 docker cp 复制到容器中再执行 wp user update username --user_pass=newpassword 命令完成了密码的重置。

理论上的最佳实践是创建一个带 wp-cli 的 docker 镜像,相关站点的部署都使用该镜像。



总结:

  1. 部署的服务如果有密码恢复功能,最好还是提前配置好(邮件配置等等)
  2. 解决问题时尽量少进行破坏性操作,最好不要做“临时修改XX”以及直接操作数据库这样的事情,风险比较大
http://www.rkmt.cn/news/5916.html

相关文章:

  • Spring Boot 下 Druid 连接池:多维度优化打造卓越性能
  • vue3使用vue3-pdf-app预览pdf文档
  • 使用lvgl/lv_port_pc_visual_studio在PC上运行LVGL模拟器
  • Hutool 调用第三方接口报错
  • 丑东西经济学:全面分析
  • Python turtle 海龟画图入门指南
  • 啥是CPU
  • C# Avalonia 15- Animation- CodeAnimation
  • ubuntu 18.04安装mysql 8.0.41
  • C++ std::unordered_set
  • 如何将一个项目同时提交到GitHub和Gitee(码云)上
  • 易基因:Nat Genet/IF29:董朝斌团队ChIP-seq等揭示作物株型穗型发育调控新机制 助力表观遗传育种驯化改良(顶刊佳作)
  • Python TensorFlow的CNN-LSTM-GRU集成模型在边缘物联网数据IoT电动汽车充电站入侵检测应用
  • 源码管理—密钥硬编码问题
  • 数据库原理-第二章——关系型数据库
  • TCP协议与wireshark
  • ObjectSense 包与模块:代码组织的艺术
  • 数学之美 第一章读后感
  • 【ABSR出版】第二届农业工程与生物学国际研讨会(ISAEB 2025)
  • 博客皮肤
  • 低轨卫星跟踪对星方式
  • 开源中国社区发布AI赋能2.1版本:打造企业级私有化知识中枢新范式
  • PL/SQL 性能优化指南
  • 支配对
  • DamiBus v1.1.0 发布(给单体多模块解耦)
  • Xcode 26 (17A324) 正式版发布 - Apple 平台 IDE
  • macOS Tahoe 26 (25A354) Boot ISO 原版可引导镜像下载
  • macOS Sequoia 15.7 (24G222) 正式版 ISO、IPSW、PKG 下载
  • 【IEEE出版|Fellow云集】第五届电气工程与机电一体化技术国际学术会议(ICEEMT 2025)
  • AR眼镜:远程协作的“破局者”,让困难解决“云手帮”