使用文檔微內覈實現了對AEM中關係資料庫持久性的支援。 文檔微內核是實現MongoDB持久性的基礎。
它包含以Mongo Java API為基礎的Java API。 也提供BlobStore API的實作。 預設情況下,Blob儲存在資料庫中。
如需實作詳細資訊,請參閱 RDBDocumentStore 和 RDBBlobStore 檔案。
支援 PostgreSQL 9.4 也提供,但僅供示範之用。 它將無法用於生產環境。
有關AEM中關係資料庫支援級別的詳細資訊,請參見 技術需求頁面.
存放庫是透過設定 DocumentNodeStoreService
OSGi服務。 除了MongoDB外,它還擴展了它以支援關係資料庫持久性。
資料來源必須使用AEM進行設定,才能運作。 這是透過 org.apache.sling.datasource.DataSourceFactory.config
檔案。 相應資料庫的JDBC驅動程式需要作為本地配置內的OSGi包單獨提供。
有關為JDBC驅動程式建立OSGi套件組合的步驟,請參見 檔案 在Apache Sling網站上。
某些SQL驅動程式已打包為OSGi包。
如果是這種情況,請將jar檔案複製到install-path/crx-quickstart/install/9。
套件組合就緒後,請依照下列步驟以使用RDB持續性設定AEM:
確保資料庫守護程式已啟動,並且您有可與AEM一起使用的活動資料庫。
將AEM 6.3 jar複製到安裝目錄。
建立名為 crx-quickstart\install
(在安裝目錄中)。
通過在 crx-quickstart\install
目錄:
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.config
通過在 crx-quickstart\install
資料夾:
org.apache.sling.datasource.DataSourceFactory-oak.config
有關每個受支援資料庫的資料源配置的詳細資訊,請參見 資料源配置選項.
接下來,準備要與AEM一起使用的JDBC OSGi套件組合:
mysql-connector-java-version-bin.jar
(捆綁)最後,從AEM開始 crx3
和 crx3rdb
執行模式:
java -jar quickstart.jar -r crx3,crx3rdb
此 org.apache.sling.datasource.DataSourceFactory-oak.config
OSGi配置用於配置AEM和資料庫持久層之間通信所需的參數。
可使用下列設定選項:
datasource.name:
資料來源名稱。 預設為 oak
。
url:
需要與JDBC一起使用的資料庫的URL字串。 每個資料庫類型都有其自己的URL字串格式。 如需詳細資訊,請參閱 URL字串格式 下方。
driverClassName:
JDBC驅動程式類名。 這會因您要使用的資料庫以及隨後連接到該資料庫所需的驅動程式而異。 以下是AEM支援的所有資料庫的類名:
org.postgresql.Driver
(適用於PostgreSQL;com.ibm.db2.jcc.DB2Driver
DB2;oracle.jdbc.OracleDriver
oracle;com.mysql.jdbc.Driver
(MySQL和MariaDB);om.microsoft.sqlserver.jdbc.SQLServerDriver
Microsoft SQL Server(實驗性)。username:
資料庫運行的用戶名。
password:
資料庫密碼。
根據需要使用的資料庫類型,在資料源配置中使用不同的URL字串格式。 以下是AEM目前支援的資料庫格式清單:
jdbc:postgresql:databasename
(適用於PostgreSQL;
jdbc:db2://localhost:port/databasename
DB2;
jdbc:oracle:thin:localhost:port:SID
oracle;
jdbc:mysql://localhost:3306/databasename
(MySQL和MariaDB);
jdbc:sqlserver://localhost:1453;databaseName=name
Microsoft SQL Server(實驗性)。
雖然RDBMS持續性支援同時使用具有單一資料庫的多個AEM例項,但不支援同時安裝。
要解決此問題,請確保先使用單個成員運行安裝,然後在完成安裝後添加其他成員。