AEM 6.4中的RDBMS支援

概覽

AEM中對關係型資料庫永續性的支援是使用Document Microkernel實作的。 Document Microkernel也是實現MongoDB持久性的基礎。

它包含以Mongo Java API為基礎的Java API。 還提供了BlobStore API的實現。 預設情況下,blob儲存在資料庫中。

有關實施詳細資訊,請參見RDBDocumentStoreRDBBlobStore文檔。

注意

另外也提供對​PostgreSQL 9.4​的支援,但僅供示範之用。 它不適用於生產環境。

支援的資料庫

如需AEM中關聯式資料庫支援層級的詳細資訊,請參閱技術需求頁面

配置步驟

儲存庫是通過配置DocumentNodeStoreService OSGi服務建立的。 除了MongoDB外,它還擴展了它以支援關係資料庫持久性。

若要運作,資料來源必須使用AEM進行設定。 這是透過org.apache.sling.datasource.DataSourceFactory.config檔案完成。 在本地配置中,需要分別以OSGi捆綁包的形式提供相應資料庫的JDBC驅動程式。

如需建立JDBC驅動程式的OSGi組合的步驟,請參閱Apache Sling網站上的此documentation

在套件就位後,請依照下列步驟來設定AEM的RDB永續性:

  1. 請確定資料庫守護程式已啟動,且您有可與AEM搭配使用的作用中資料庫。

  2. 將AEM 6.3 jar複製至安裝目錄。

  3. 在安裝目錄中建立名為crx-quickstart\install的資料夾。

  4. 通過在crx-quickstart\install目錄中建立具有以下名稱的配置檔案來配置文檔節點儲存:

    • org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.config
  5. 通過在crx-quickstart\install資料夾中建立另一個具有以下名稱的配置檔案來配置資料源和JDBC參數:

    • org.apache.sling.datasource.DataSourceFactory-oak.config
    注意

    有關每個支援資料庫的資料源配置的詳細資訊,請參見資料源配置選項

  6. 接下來,準備要與AEM搭配使用的JDBC OSGi搭售:

    1. crx-quickstart/install資料夾中,建立名為9的資料夾。

    2. 將JDBCjar放在新資料夾中。

  7. 最後,使用crx3crx3rdb執行模式啟動AEM:

    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 for PostgreSQL;
    • com.ibm.db2.jcc.DB2Driver DB2;
    • oracle.jdbc.OracleDriver 對Oracle;
    • com.mysql.jdbc.Driver 對於MySQL和MariaDB(實驗性);
    • c om.microsoft.sqlserver.jdbc.SQLServerDriver for Microsoft SQL Server(實驗性)。
  • username: 資料庫運行的用戶名。

  • password: 資料庫口令。

URL字串格式

根據需要使用的資料庫類型,資料源配置中會使用不同的URL字串格式。 以下是AEM目前支援之資料庫的格式清單:

  • jdbc:postgresql:databasename for 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 for Microsoft SQL Server(實驗性)。

已知限制

雖然RDBMS永續性支援將多個AEM例項與單一資料庫同時使用,但並行安裝則不受支援。

為瞭解決這個問題,請務必先使用單一成員運行安裝,然後在完成安裝後添加其他成員。

本頁內容