RDBMS-ondersteuning in AEM 6.4

Overzicht

Ondersteuning voor relationele databasedruk in AEM wordt geïmplementeerd met behulp van Document Microkernel. De Document Microkernel is de basis die ook wordt gebruikt voor de implementatie van MongoDB-persistentie.

Deze API bestaat uit een Java API die is gebaseerd op de API van Mongo Java. Er wordt ook een implementatie van een BlobStore-API geleverd. Standaard worden klodders opgeslagen in de database.

Raadpleeg de documentatie RDBDocumentStore en RDBBlobStore voor meer informatie over de implementatiedetails.

OPMERKING

Ondersteuning voor PostgreSQL 9.4 wordt ook geboden, maar alleen voor demo-doeleinden. Het zal niet beschikbaar voor productiemilieu's zijn.

Ondersteunde databases

Raadpleeg de pagina Technische vereisten voor meer informatie over het niveau van ondersteuning voor relationele databases in AEM.

Configuratiestappen

De opslagplaats wordt gecreeerd door de DocumentNodeStoreService dienst te vormen OSGi. Naast MongoDB is de toepassing uitgebreid met ondersteuning voor relationele databasepersistentie.

Om het te werken, moet een gegevensbron met AEM worden gevormd. Dit gebeurt via het org.apache.sling.datasource.DataSourceFactory.config-bestand. De bestuurders JDBC voor het respectieve gegevensbestand moeten afzonderlijk als bundels OSGi binnen de lokale configuratie worden verstrekt.

Zie documentatie op de Apache Sling-website voor stappen voor het maken van OSGi-bundels voor JDBC-stuurprogramma's.

OPMERKING

Sommige SQL-stuurprogramma's zijn al verpakt als OSGi-bundels.

Als dit het geval is, kopieert u het jar-bestand naar install-path/crx-quickstart/install/9.

Nadat de bundels zijn geïnstalleerd, volgt u de onderstaande stappen om AEM te configureren met RDB-persistentie:

  1. Zorg ervoor dat de databasdaemon is gestart en dat u een actieve database hebt voor gebruik met AEM.

  2. Kopieer de AEM 6.3 jar in de installatiemap.

  3. Maak een map met de naam crx-quickstart\install in de installatiemap.

  4. Vorm de opslag van de documentknoop door een configuratiedossier met de volgende naam in de crx-quickstart\install folder te creëren:

    • org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.config
  5. Vorm de gegevensbron en de parameters JDBC door een ander configuratiedossier met de volgende naam in de crx-quickstart\install omslag te creëren:

    • org.apache.sling.datasource.DataSourceFactory-oak.config
    OPMERKING

    Voor gedetailleerde informatie over de gegevensbronconfiguratie voor elke gesteunde gegevensbestand, zie Opties van de Configuratie van de Gegevensbron.

  6. Bereid daarna de bundels JDBC OSGi voor die met AEM moeten worden gebruikt:

    1. Download het ZIP-archief van https://dev.mysql.com/downloads/connector/j/
      • version must be >= 5.1.38
    2. mysql-connector-java-version-bin.jar (bundel) uit archief extraheren
    3. Gebruik de webconsole om de bundel te installeren en te starten:
      • Ga naar http://serveraddress:serverport/system/console/bundles
      • Selecteer Installeren/bijwerken
      • Blader naar de bundel die u uit het gedownloade ZIP-archief hebt uitgepakt
      • Controleer of het JDBC-stuurprogramma van Oracle Corporation voor MySQLcom.mysql.jdbc actief is en start het.
  7. Start ten slotte AEM met de runmodi crx3 en crx3rdb:

    java -jar quickstart.jar -r crx3,crx3rdb
    

Configuratieopties gegevensbron

De org.apache.sling.datasource.DataSourceFactory-oak.config configuratie OSGi wordt gebruikt om de parameters te vormen nodig voor communicatie tussen AEM en de laag van de gegevensbestandpersistentie.

De volgende configuratieopties zijn beschikbaar:

  • datasource.name: De naam van de gegevensbron. De standaardwaarde is oak.

  • url: De URL-tekenreeks van de database die moet worden gebruikt met JDBC. Elk databasetype heeft een eigen URL-tekenreeksindeling. Zie URL-tekenreeksindelingen hieronder voor meer informatie.

  • driverClassName: De naam van de JDBC-stuurprogrammaklasse. Dit verschilt afhankelijk van de database die u wilt gebruiken en vervolgens van het stuurprogramma dat nodig is om verbinding met de database te maken. Hieronder ziet u de klassenamen voor alle databases die worden ondersteund door AEM:

    • org.postgresql.Driver voor PostgreSQL;
    • com.ibm.db2.jcc.DB2Driver voor DB2;
    • oracle.jdbc.OracleDriver voor Oracle;
    • com.mysql.jdbc.Driver voor MySQL en MariaDB (experimenteel);
    • c om.microsoft.sqlserver.jdbc.SQLServerDriver voor Microsoft SQL Server (experimenteel).
  • username: De gebruikersnaam waaronder de database wordt uitgevoerd.

  • password: Het databasewachtwoord.

Indelingen van URL-tekenreeks

Afhankelijk van het databasetype dat moet worden gebruikt, wordt in de configuratie van de gegevensbron een andere indeling voor de URL-tekenreeks gebruikt. Hieronder volgt een lijst met indelingen voor de databases die momenteel AEM ondersteunen:

  • jdbc:postgresql:databasename voor PostgreSQL;

  • jdbc:db2://localhost:port/databasename voor DB2;

  • jdbc:oracle:thin:localhost:port:SID voor Oracle;

  • jdbc:mysql://localhost:3306/databasename voor MySQL en MariaDB (experimenteel);

  • jdbc:sqlserver://localhost:1453;databaseName=name voor Microsoft SQL Server (experimenteel).

Bekende beperkingen

Hoewel gelijktijdig gebruik van meerdere AEM instanties met één database wordt ondersteund door RDBMS-persistentie, zijn gelijktijdige installaties niet mogelijk.

Als u dit wilt omzeilen, moet u eerst de installatie uitvoeren met één lid en de andere leden toevoegen nadat de eerste installatie is voltooid.

Op deze pagina