欢迎访问机房运维工作室

爱数知识库

Anyshare-升级失败,提示错误:Column count doesn't match value count at row 1

频道:爱数知识库 日期: 浏览:143

Anyshare-升级失败,提示错误:Column count doesn't match value count at row 1

关键字

升级脚本

适用产品

  • Anyshare 5.0.31

问题描述

在 5.0.31 同机升级至 6.0.6 的恢复过程中,restore.py 执行失败,并提示如下错误信息:
“Column count doesn't match value count at row 1”

问题影响

无法完成升级数据恢复。

问题原因

通过详细日志排查,发现错误信息提示数据库字段无法找到:

对比 Anyshare 5.0和 Anyshare 6.0的数据库发现数据库字段没有升级修改,判断为相关的脚本没有执行:

检查脚本目录发现在备份后压缩了的相关子目录,解压后重新加了一层目录,导致相对路径发生变化,一些脚本没有执行。


解决方案

方案一,重新安装操作系统然后恢复 upgrade 目录为正常的脚本目录结构,再执行恢复,这是最稳当和推荐的做法。
方案二,如果有其他困难导致无法重装,则直接调整 upgrade 目录为正常的脚本目录结构后,重新执行恢复脚本。

更多信息

upgrade 升级目录下的 restore_by_step 在执行过 restore.py 之后会生成 cache.json 文件,记录哪些步骤已经执行ok,哪些步骤执行 failed ,在查明原因后可以重新执行 restore_by_step 下的 python 文件继续进行升级恢复操作。