ownCloud MySQL 表“oc_filecache”损坏了,我可以重新生成它吗?

ownCloud MySQL 表“oc_filecache”损坏了,我可以重新生成它吗?

我的ownCloud由于 MySQL 数据损坏,升级失败。

检查错误日志,似乎损坏影响了owncloud.oc_filecache表。

我尝试check table owncloud.oc_filecache;从 MySQL 控制台运行,但 MySQL 仍然崩溃。

顾名思义,该表仅保存缓存数据,并且可以重新生成它。

有什么方法可以让我删除该表并从头开始重新创建它吗?

答案1

要清除表,请进入MySQL控制台:

mysql -uroot p

使用您的密码登录并输入:

truncate owncloud.oc_filecache;
check table owncloud.oc_filecache;
quit

owncloud是数据库名称,oc_是表名前缀,两者均在安装期间指定,并且在您的系统上可能有所不同。)

这会删除表的全部内容(这对于 来说没问题oc_filecache,因为它将由服务器重建,但不要在随机表上执行此操作,除非你知道自己在做什么

此后,我再次尝试运行occ upgrade并收到另一个错误,这次是针对oc_activity表格的。

快速搜索后发现oc_activity保存了最近的活动数据(其中的条目最终会过期),我重新运行了上述操作oc_activity(牺牲系统中所有用户的“最近活动”条目)并重试occ upgrade

这次升级很顺利,没有任何错误。我必须occ maintenance:mode --off手动运行,然后重新启用我的应用程序,现在一切看起来都很好。

相关内容