我的derby数据库遇到一些问题,丢失了数据。现在我只有文件存储文件夹,没有备份文件。那么如何从 filestore 文件夹中恢复文件呢?
当我重新启动由 docker 安装的artifactory6.1 时,derby 数据库丢失了数据。重新启动后,数据库的数据将变为首次设置工件时的默认状态。并且所有存储库的数据均未找到。我使用一些工具查看数据库,它只有一点数据,转储到文件只有 2MB。 但是德比的 dat 文件仍然有 200MB 大小,所以也许可以恢复数据库?但我不知道该怎么办。
由于 Artifactory 使用基于校验和的存储,因此文件存储中的文件是通过校验和而不是名称来保存的,并且文件的名称保存在数据库中。这意味着您无法知道文件存储中哪个文件是哪个。 为了更好地了解您的情况,请您提供一些信息:
此外,还有一种方法可以连接新的 Derby 数据库并将其指向 Derby 数据文件夹(位于 $ARTIFACTORY_HOME/data/derby)。 只需打开 IJ 工具,然后输入
connect 'jdbc:derby:/full/path/to/the/database/folder';
如果您不知道如何运行“ij”,请查看 Derby 文档中的 Derby 教程,然后进行操作;然后返回尝试打开数据库。
将 Derby DataBase 连接到 Derby 数据文件夹后,可以调出 Artifactory 看看数据是否恢复。
另请注意,JFrog 始终建议备份数据库和文件存储,以避免出现此类情况。
我们希望这会有所帮助。