我在使用 Jackrabbit Oak 作为内容存储库的 Sling 11。我想知道如何设置 Sling 以将 JCR 存储库存储在 RDBMS(具体为 DB2)上。
我在Jackrabbit Persistence上找到了这个链接,但看起来它不适用于 Oak 并且 Oak 文档主要是关于 MongoDB 的。
还找到了Cassandra Resource Provider的实现,尽管它似乎旨在访问映射到 Cassandra 的特定路径而不使用 Oak。
谢谢,
我在使用 Jackrabbit Oak 作为内容存储库的 Sling 11。我想知道如何设置 Sling 以将 JCR 存储库存储在 RDBMS(具体为 DB2)上。
我在Jackrabbit Persistence上找到了这个链接,但看起来它不适用于 Oak 并且 Oak 文档主要是关于 MongoDB 的。
还找到了Cassandra Resource Provider的实现,尽管它似乎旨在访问映射到 Cassandra 的特定路径而不使用 Oak。
谢谢,
在这里回答,但归功于Sling 用户的邮件列表
在 boot.txt 添加一个新的运行模式(在我的情况下是 Oak_db2)
[设置] sling.run.mode.install.options=oak_tar,oak_mongo,oak_db2
下载 Sling 的数据源项目并编译它。
在 Oak.txt 中配置运行模式(这将在 Felix 中为您加载包):
[工件 startLevel=15 runModes=oak_db2] com.h2database/h2-mvstore/1.4.196 com.ibm.db2/jcc4/11.1
org.apache.sling/org.apache.sling.datasource/1.0.3-SNAPSHOT
并设置将管理持久性的服务:
[configurations runModes=oak_db2]
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService
documentStoreType="RDB"
org.apache.sling.datasource.DataSourceFactory
url="jdbc:db2://10.1.2.3:50000/sling"
driverClassName="com.ibm.db2.jcc.DB2Driver"
username="****"
password="****"
datasource.name="oak"