我们的附件已在我们的数据库中存储了很长时间,这导致数据库变得庞大,并且我们的备份极其不可靠。我们已将附件移至文件系统,从而节省了大量空间。
现在,我们最大的表是CMS_AttachmentHistory
。我已经能够测试暴力删除SQL中的每一行(以及CMS_VersionAttachment
联结表中的每一行)。但是,有没有一种方法可以在Kentico Admin GUI中完成而不必求助于此?
当我说暴力删除时,我的意思是:
DELETE FROM dbo.CMS_VersionAttachment
DELETE FROM dbo.CMS_AttachmentHistory
答案 0 :(得分:2)
GUI中有一个选项可以执行此操作,但是这也会影响页面版本历史记录。如果转到设置>内容>内容管理,然后查看工作流程部分,则可以看到名为版本历史记录长度的设置。将其减少到一个较小的数字(我相信默认值为20)将通过删除不需要的行来减少存储以反映新值的版本历史记录。
这将影响所有版本历史记录,不仅会影响附件,还会影响页面本身。在这种情况下,您需要确定是否需要/想要保留页面的版本历史记录。
如果您不想丢失该历史记录,那么我想说,一个好的选择是编写一个脚本,该脚本可以将您所记录的AttachmentBinary
列设置为null
不需要/想要(假设您说现在将文件存储在文件系统上,那么任何当前版本都将具有正确的值,所以可能是所有这些版本)
答案 1 :(得分:0)