问题现象
许多WordPress用户在尝试升级核心、插件或主题时,可能会遇到“另一更新正在进行”(Another update is currently in progress)的错误提示,导致无法正常完成更新操作。这种情况通常发生在之前的更新过程被意外中断后。
问题原因
WordPress为了防止多个更新同时进行导致冲突,会在数据库中设置一个临时标志(core_updater.lock
)。当更新正常完成时,这个标志会被自动清除。但如果更新过程被意外中断(如服务器超时、网络问题或手动终止),这个标志就可能被遗留在数据库中,导致后续更新无法进行。
解决方案
方法一:通过数据库直接删除锁定标志
- 登录您的phpMyAdmin或其他数据库管理工具
- 选择WordPress使用的数据库
- 找到
wp_options
表(表前缀可能不同,如wp_
可能是您自定义的前缀) - 搜索
core_updater.lock
选项并删除该行 - 如果找不到,可以尝试搜索
upgrader.lock
并删除
方法二:使用WP-CLI命令行工具
如果您有服务器SSH访问权限,可以运行以下命令:
wp option delete core_updater.lock
方法三:通过functions.php临时解决
- 登录WordPress后台
- 进入”外观”→”主题编辑器”
- 编辑当前主题的
functions.php
文件 - 在文件末尾添加以下代码:
delete_option('core_updater.lock');
- 保存文件后立即删除这行代码(避免重复执行)
方法四:等待自动解锁
WordPress的锁定机制通常会在1小时后自动解除。如果您不急于更新,可以等待一段时间后重试。
预防措施
- 在更新前备份网站和数据库
- 确保服务器资源充足(内存、执行时间等)
- 避免在高峰时段进行大型更新
- 考虑使用专业的主机服务,提供更稳定的更新环境
注意事项
- 操作数据库前务必备份
- 如果您不熟悉数据库操作,建议寻求专业人士帮助
- 频繁出现此问题可能表明服务器配置需要优化
通过以上方法,您应该能够解决WordPress更新时遇到的“另一更新正在进行”的问题,顺利完成网站更新。