Show Menu
主題×

AEM 6.4中的RDBMS支援

概覽

AEM中對關係型資料庫永續性的支援是使用Document Microkernel實作的。 Document Microkernel也是實現MongoDB持久性的基礎。
它包含以Mongo Java API為基礎的Java API。 還提供了BlobStore API的實現。 預設情況下,blob儲存在資料庫中。
有關實施詳細資訊的詳細資訊,請參 閱RDBDocumentStore RDBBlobStore文檔
另外也 提供PostgreSQL 9.4 支援,但僅供示範之用。 它不適用於生產環境。

支援的資料庫

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

配置步驟

儲存庫是通過配置OSGi服務 DocumentNodeStoreService 建立的。 除了MongoDB外,它還擴展了它以支援關係資料庫持久性。
若要運作,資料來源必須使用AEM進行設定。 這是透過檔案完 org.apache.sling.datasource.DataSourceFactory.config 成。 在本地配置中,需要分別以OSGi捆綁包的形式提供相應資料庫的JDBC驅動程式。
如需建立JDBC驅動程式的OSGi搭售的步驟,請參閱 Apache Sling網站 上的本檔案。
在套件就位後,請依照下列步驟來設定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. 通過在資料夾中建立具有以下名稱的另一個配置檔案來配置資料源和JDBC crx-quickstart\install 參數:
    • org.apache.sling.datasource.DataSourceFactory-oak.config
    有關每個受支援資料庫的資料源配置的詳細資訊,請參閱 資料源配置選項
  6. 接下來,準備要與AEM搭配使用的JDBC OSGi搭售:
    1. 在資料夾 crx-quickstart/install 中,建立一個名為的資料夾 9
    2. 將JDBCjar放在新資料夾中。
  7. 最後,從AEM開始使用 crx3 和執 crx3rdb 行模式:
    java -jar quickstart.jar -r crx3,crx3rdb
    
    

資料源配置選項

OSGi org.apache.sling.datasource.DataSourceFactory-oak.config 組態可用來設定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例項與單一資料庫同時使用,但並行安裝則不受支援。
為瞭解決這個問題,請務必先使用單個成員運行安裝,然後在完成安裝後添加其他成員。