Installation and Administration

Connecting Nuxeo to the Database

Updated: October 16, 2020

To connect Nuxeo to your database, you need to tell Nuxeo which database template to use and provide the database connection information.

Connecting Nuxeo to the Database From the Admin Center

  1. In the Admin Center, click on the Setup tab of system information section.
  2. In the Main information section, select the target database in the drop down menu. A new Database Information section is displayed on the page.
  3. Fill in the database connection information.
  4. Click on the Save button displayed below the Email information section.
  5. Restart your server.

Connecting Nuxeo to the Database From the Startup Wizard

The first time you start your Nuxeo server, a wizard is displayed to help you setup your application. One of the steps is about the database: select the database you want to use in the drop down list and provide the connection information to the database.

Connecting Nuxeo to the Database From the nuxeo.conf File

By default, the "default" template is enabled on your Nuxeo server (see the Database templates section for more information on this template). You need to edit it to change the template to be used.

  1. Open your nuxeo.conf file with a text editor.

For Windows users

Do not use Office writers, nor Notepad. Wordpad is fine, Notepad++ and SciTE are good text editors, there are a lot of other text editors.

  1. If needed, uncomment or edit the nuxeo.templates parameter and replace default with the wanted database template's name.
  2. Uncomment or edit the parameters below and provide their values:

    • nuxeo.db.user
    • nuxeo.db.password
    • nuxeo.db.port

      For production or load testing environments

      These are the minimum required parameters to enable the Nuxeo server to communicate with the database. For a production or load testing environment, you may need to provide the other commented parameters.

  3. Save your modifications.
  4. Restart the server.

Database Templates

The default available database templates are:

  • common: common template used by other templates;
  • common-binding: (JBoss only), template used by other templates;
  • common-deploydir: (JBoss only), template used by other templates;
  • default: default Nuxeo configuration template for test purpose;
  • https: (Tomcat only), not recommended template for making the server listen to port 443 (HTTPS);
  • monitor: (JBoss only), activate the JBoss LogginMonitor service to log miscellaneous MBean informations;
  • postgresql: PostgreSQL configuration template;
  • postgresql-quartz-cluster
  • mssql: MS SQL Server configuration template;
  • mssql-quartz-cluster
  • mysql: MySQL configuration template;
  • oracle: Oracle configuration template;
  • oracle-quartz-cluster
  • custom: sample custom templates. Of course, this template is empty by default. One should copy it outside $NUXEO_HOME and adapt to his needs.

The most commonly used templates are described below. For more information read the page Configuration Templates.


This is the default Nuxeo configuration. It is designed for development or test purpose.

  • Repository backend: H2
  • Services backend: Derby

This is the recommended configuration for production, based on PostgreSQL.

  • Repository backend: PostgreSQL XA
  • Services backend: PostgreSQL XA

The PostgreSQL driver is included in the Nuxeo applications by default. However, if needed you can download it from The JAR (for instance postgresql-9.0-801.jdbc4.jar) is located in $NUXEO/lib/.

You can use a later driver with an earlier database version, for instance the 9.0 driver still works with PostgreSQL 8.3 or 8.4.

See the page Configuring PostgreSQL for more information on the database configuration.


  • Repository backend: Oracle XA
  • Services backend: Oracle

The driver is not included in Nuxeo applications. To install it:

  1. Download the appropriate JDBC driver from:
  2. The JAR must be placed in $NUXEO/lib/.

See the page Configuring Oracle for more information on the database configuration.


  • Repository backend: Ms SQL Server XA
  • Services backend: Ms SQL Server XA

The Open Source JTDS driver must be used (the official Microsoft JDBC driver has problems). You can download it from:

This JAR must then be placed in $NUXEO/lib/.

See the page Configuring MS SQL Server for more information on the database configuration.


  • Repository backend: MySQL XA
  • Services backend: MySQL

The JDBC driver (dowloadable from is included in Nuxeo applications and is located in $NUXEO/lib/.

We recommend using a near-infinite wait_timeout in the MySQL server configuration.

We'd love to hear your thoughts!

All fields required