如果我的文件存储缺少二进制文件,我该怎么办?
JFrog提供的一个特别有用的用户插件是filestoreIntegrity插件,详细描述了它在这里.
这个插件检查你的数据库和文件存储,并确定是否有二进制文件存在于数据库中,但从文件存储中丢失,反之亦然。输出是一个JSON对象,包含两个列表,一个是数据库中但不在文件存储中的二进制文件,标题为“missing”,另一个是文件存储中但不在数据库中的二进制文件,标题为“extra”。
当你开始注意到日志中出现“Binary provider has no content for
如果您丢失了二进制文件,那么您应该做的第一件事就是彻底检查文件系统,确保二进制文件完全丢失。如果您能够找到它们,请联系技术支持以了解为什么插件确定它们丢失了。
如果您无法找到它们,这意味着二进制文件已经丢失并且无法恢复。
清除数据库中缺失二进制文件的最简单方法是执行完整的系统导出(不要选中Exclude Content或Exclude元数据)框,然后执行完整的系统导入。
您将在UI中看到错误,指示缺少二进制文件的导出失败。这是正常的,导出过程将继续,同时忽略这些二进制文件。
在日志中看到指示导出成功完成的消息后,对刚刚导出的数据执行完整的系统导入。在导入时,Artifactory将删除所有现有的内容,并根据导入的数据重新构建它。该数据将不包含缺失的二进制文件。
