0

我有一个 Jackrabbit 作为独立服务器。我已配置 pool.OraclePersistenceManager 将我的所有数据保存在 Oracle11 中。数据被移动到数据库,但文件系统目录,即“存储库”,仍然存在于服务器文件系统上。如果我从文件系统中删除“存储库”目录,那么我将无法获取我的文档。这很奇怪。

我将 repo 移至 Oracle DB 以进行定期备份,并使其可用于驻留在不同服务器机器上的多个 jackrabbit 实例,并且一次只有一个服务器处于活动状态。我这样做是为了防止停机,如果一台服务器出现故障,另一个 jackrabbit 实例会启动并连接到同一个数据库实例。

另一件事如果从数据库中截断 repo 数据,则在重新启动 jackrabbit 服务器时,数据将再次在数据库中可见。这是正确的行为吗。我认为如果从数据库中删除数据文件行,那么即使在重新启动 jackrabbit 实例后,数据也不应该在数据库中可用。

我想消除文件系统中的数据保存。

如果有人能描述 jackrabbit 目录的使用和数据库的使用,那就太好了。以及它们之间的关系。

4

4 回答 4

2

您可能会查看集群文档,因为大多数配置/内容必须在节点之间共享,因此“更简单”的方法之一是将所有内容存储在数据库中。看来您必须共享配置,所以恐怕您必须为配置文件设置一些 NFS 共享。

于 2013-08-08T08:36:48.793 回答
0

存储库配置(文件repository.xml)需要在文件系统中;我没有办法避免这种情况。但是,这只是一个不可变的配置文件,所以我想知道这是否真的是一个问题。如果是,为什么?

如果您使用搜索索引,则其文件存储在本地文件系统中。没有简单的方法可以解决这个问题,除非您禁用搜索索引。

于 2013-08-07T13:52:53.327 回答
0

我设法使用集群移动了我的所有数据,这符合我的备份目的。我创建了两个集群节点(遵循 JackRabbit 集群文档)。然后保持一个节点离线,另一个节点在线。因此,当出现任何问题时,我的第二个集群将激活并替换第一个集群节点。我正在节点 B 中的节点 A 中进行修改。

所以我认为我的备份和恢复工作得很好。至少我们可以称其为弹性环境。

于 2013-08-14T10:48:14.420 回答
0

我做了集群的事情,现在如果一个节点出现故障,我会启动第二个节点并且我的所有文档/资产都可用。但仍然无法从文件系统中删除存储库目录。至少现在我不需要担心它,因为我可以在服务器崩溃问题中使用我的数据

于 2013-08-14T10:56:24.893 回答