把 5.9 的站点还原到 6.4 环境,后台提示数据库需要升级,点继续后卡在 wp_options 不动,页面一直转圈。第一次遇到会往复杂处想,其实漏掉的多是个小前提。

wp core update-db --dry-run
wp option get db_version

跨大版本还原会触发 dbDelta,按新版本的表结构改老库。中间缺的升级步骤要一次补完,表大或者有锁就很容易超时。这一点先确认清楚,后面就不用反复试。

「备份版本不匹配」相关的验证我通常做两遍,改完一次、隔天再看一次,确认不是临时生效。临时改动用注释写上日期和原因,过两周自己都记不清为什么这么写。

动手前把原文件复制一份带时间戳,出问题立刻换回去,比现场分析快得多。一次只改一处,改完立刻验证,几个改动叠在一起,出问题就说不清是谁导致的。

具体做法是,先还原到和目标版本接近的环境 再逐级升级;升级前把 wp_options 里的 db_version 备份一份;升级卡住时看数据库进程 有长事务先杀掉再重试。

改完照着核一遍,后台的数据库升级提示消失,db_version 和程序版本对应。

作者 9823189