This page tells you how to set up a SQL Server datasource connection for Confluence.

Step 1. Shut down Tomcat

  1. Run bin/shutdown.sh or bin/shutdown.bat to bring Tomcat down while you are making these changes.
  2. Make a backup of your <CONFLUENCE_HOME>/confluence.cfg.xml file and your <CONFLUENCE_INSTALLATION>/conf/server.xml file, so that you can easily revert if you have a problem.

Step 2. Install the SQL Server database driver

  1. Download the SQL Server JDBC driver:
    • Links are available on this page: Database JDBC Drivers.
    • Unpack the archive file you have downloaded, and find the JAR file called something like this: jtds-x.x.x.jar, where x.x.x is a version number.
  2. Alternatively, you can get the driver from your Confluence installation: /confluence/WEB-INF/lib/jtds-x.x.x.jar.
  3. Put the JAR file into the lib folder of your Tomcat installation: <TOMCAT-INSTALLATION>/lib.

On this page:

Related pages:

Step 3. Configure Tomcat

  1. Edit the conf/server.xml file in your Tomcat installation.
  2. Find the following lines:

    <Context path="" docBase="../confluence" debug="0" reloadable="true">
          <!-- Logger is deprecated in Tomcat 5.5. Logging configuration for Confluence is specified in confluence/WEB-INF/classes/log4j.properties -->
    
  3. Insert the DataSource Resource element inside the Context element, directly after the opening <Context.../> line,  before Manager:

    <Resource name="jdbc/confluence" auth="Container" type="javax.sql.DataSource"
        username="yourDatabaseUser"
        password="yourDatabasePassword"
        driverClassName="net.sourceforge.jtds.jdbc.Driver"
        url="jdbc:jtds:sqlserver://localhost:1433/yourDatabaseName"
        maxActive="20"
        maxIdle="10"
        validationQuery="select 1" />
    
Notes:

Step 4. Configure the Confluence web application

  1. Edit this file in your Confluence installation: <CONFLUENCE_INSTALLATION>/confluence/WEB-INF/web.xml.
  2. Insert the following element just before </web-app> near the end of the file:

    <resource-ref>
        <description>Connection Pool</description>
        <res-ref-name>jdbc/confluence</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
    

If you are changing an existing Confluence installation over to using a Tomcat datasource:

  1. Edit the <CONFLUENCE_HOME>/confluence.cfg.xml file.
  2. Delete any line that contains a property that begins with hibernate.
  3. Insert the following at the start of the <properties> section.

    <property name="hibernate.setup">true</property>
    <property name="hibernate.dialect">net.sf.hibernate.dialect.SQLServerIntlDialect</property>
    <property name="hibernate.connection.datasource">java:comp/env/jdbc/confluence</property>
    

Step 5. Restart Tomcat

Run bin/startup.sh or bin/startup.bat to start Tomcat with the new settings.