Skip Main Navigation

Adobe Experience Manager 6 with a MongoDB Setup

With AEM 6 the persistence layer which is used to store content, configurations, and program code, is called a MicroKernel (MK). AEM 6 introduced a new MicroKernel and here's what you should know.

AEM 6 introduced a new MicroKernel (MongoMK) which allows the use of MongoDB as a repository. Further MicroKernels may be added along the line but are not fully confirmed yet. In this article we will be looking at a very basic local MongoDB setup.

A simple and local MongoDB with AEM


  • Linux or Mac
  • Java 7 (preferably JDK and possibly from Oracle so you can make full use of JMX)
  • An AEM 6 license
  • An AEM 6 crx-quickstart jar
  • The mongodb binaries (linked below)

Follow the steps below to get an AEM author (or publish) up and running using a local MongoDB

1. Prepare a folder structure (sample) as below:

    ./aem_600_mongodb ./aem_600_mongodb/mongodb ./aem_600_mongodb/mongodb/data ./aem_600_mongodb/mongodb/logs


2. Download MongoDB for Mac OSX or other OS (configs in this guide also work with Linux)


3. extract the packages content directly into the mongodb directory as created under point 1. -> ( ./aem_600_mongodb/mongodb/bin should then exist )

4. in your mongodb directory, parallel to the data & logs & bin directory create the mongod.cfg file


bind_ip =
port = 27017
quiet = false
dbpath = ../data
logpath = ../logs/mongod.log
logappend = true
journal = true
directoryperdb = true
rest = true
httpinterface = true


5. now place your & AEM 6 quickstart jar in your base directory (in this case ./aem_600_mongodb)

6. extract the AEM 6 jar file (java -jar aem- -unpack)


7. edit the start script under ./aem_600_mongodb/crx-quickstart/bin and add the following properties

CQ_RUNMODE='author,crx3mongo' -> crx3mongo is added here
CQ_JVM_OPTS='-server -Xmx1024m -XX:MaxPermSize=256M -Djava.awt.headless=true -Doak.mongo.uri=mongodb://localhost:27017' -> -Doak.mongo.uri=mongodb://localhost:27017 is added here


8. once the above steps are completed go to your bin directory in your mongodb directory and start mongo db & tail the log

./mongod --config ../mongod.cfg && tail -f ../logs/mongod.log


9. now start your AEM from the ../crx-quickstart/bin directory and tail the log 

./start && tail -f ../error.log


10. once your AEM is started and everything has been created you got an AEM running on MongoDB


11. for administration purposes have a look at using the robomongo app:


he Adobe documentation and MongoDB documentation is your best bet for further details.

Stephan Becker

Head of Operations and Support

More Content Management

  • Why does real-time personalization matter?

    Remo Brechbuehl

    Business Consultant

    Remo Brechbühl has gained diverse experience in marketing, business development and strategy. During his assignments he could prove his capabilities in project management, designing strategies, customer journey mapping, and stakeholder management. He emphasis the importance of value co-creation and an analytical approach to drive an immersive user experience. Remo holds a Master’s (CEMS) degree (MSc) in International Management and a Master’s degree (MA) in Marketing, Communication and Services.

  • Introducing the Sitecore connector: unlocking Adobe AEM Assets for more authors

    Mark van der Wal

    Executive Director Business Development Nordics

    With 25 years of corporate and agency experience in the digital domain in expert and leadership roles, Mark brings a huge amount of entrepreneurial spirit and experience with enterprise clients like Philips, Rabobank and Liberty Global to the table. With a passion for new technologies and his digital marketing background, he is able to guide clients in their digital transformation and create relevant and long term business value.