---
title: "Examples"
canonical: "https://support.appfire.com/space/SQL/74318485/Examples"
format: markdown
---
> Macro (aura-html)


This page provides example configurations for application server-based data source for different Confluence versions and configuration differences with Confluence versions.

# Confluence 5.8 and higher

These are configuration examples based on Tomcat 8 or higher which is shipped with Confluence versions starting with Confluence 5.8.

| **Database** | **Information** | **JDBC driver example** | **Resource configuration** |
| --- | --- | --- | --- |
| PostgreSQL | [PostgreSQL JDBC](http://jdbc.postgresql.org/) | postgresql-9.3-1103.jdbc41.jar | ```
<Resource name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    username="confluence"
    password="confluence"
    maxTotal="25"
    maxWaitMillis="10000"
    maxIdle="10"
    driverClassName="org.postgresql.Driver"
    url="jdbc:postgresql://localhost:5432/confluence"
    validationQuery="Select 1"
/>
``` |
| MySQL | [MySql connector](http://dev.mysql.com/downloads/connector/j/5.1.html) | mysql-connector-java-5.1.34.jar | ```
 <Resource name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost/mydatabase?autoReconnect=true"
    username="username"
    password="password"
    maxTotal="25"
    maxWaitMillis="10000"
    maxIdle="5"
    validationQuery="Select 1"
/> 
```<br>See > Macro (jira)

 for info on how to configure multiple result sets. |
| Oracle | Thin Driver  
[Oracle 11g JDBC](http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html)  
[Oracle 12c JDBC](http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html) | ojdbc6.jar  
ojdbc7.jar | ```
<Resource
    name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="oracle.jdbc.OracleDriver"
    url="jdbc:oracle:thin:@www.some_server.com:1521:mysid"
    username="username"
    password="password"
    connectionProperties="SetBigStringTryClob=true"
    maxTotal="25"
    maxWaitMillis="10000"
    maxIdle="5"
    validationQuery="Select 1 from DUAL"
/> 
``` |
| Oracle Advanced | Thin Driver   
[Oracle 11g JDBC](http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html)  
[Oracle 12c JDBC](http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html) | ojdbc6.jar  
ojdbc7.jar | See [Tomcat 6.0 using Oracle Universal Connection Pool](http://www.oracle.com/technetwork/articles/oem/ucp-jdbc-tomcat-355431.html) |
| Microsoft SQL Server | [jtds driver](http://jtds.sourceforge.net/) | jtds-1.2.2.jar | ```
<Resource
    name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="net.sourceforge.jtds.jdbc.Driver"
    url="jdbc:jtds:sqlserver://mysqlserver:1433/mydatabase"
    username="username"
    password="password"
    maxTotal="25"
    maxWaitMillis="10000"
    maxIdle="10"
    validationQuery="Select 1"
/> 
``` |
| Microsoft SQL Server | Using Microsoft's jdbc driver | sqljdbc4.jar | Similar to the other examples here with parameters like the MS SQL Server example on [Data Source Profiles](https://appfire.atlassian.net/wiki/spaces/SQL/pages/74323164) |
| Derby | [Derby](http://db.apache.org/derby/) | derbyclient.jar | ```
<Resource
    name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="org.apache.derby.jdbc.ClientDriver"
    url="jdbc:derby://localhost:1527/dbname"
    username="username"
    password="password"
    maxActive="20"
    maxIdle="10"
    validationQuery="Select 1"
/>
``` |

# Confluence 5.7 and lower

These are configuration examples based on Tomcat 6 or 7 which is shipped with Confluence versions before 5.8.

| **Database** | **Information** | **JDBC driver example** | **Resource configuration** |
| --- | --- | --- | --- |
| PostgreSQL | [PostgreSQL JDBC](http://jdbc.postgresql.org/) | postgresql-8.2-507.jdbc3.jar | ```
<Resource name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    username="confluence"
    password="confluence"
    maxActive="100"
    maxIdle="10"
    driverClassName="org.postgresql.Driver"
    url="jdbc:postgresql://localhost:5432/confluence"
    validationQuery="Select 1"
/>
``` |
| MySQL | [MySql connector](http://dev.mysql.com/downloads/connector/j/5.1.html) | mysql-connector-java-3.1.14-bin.jar | ```
 <Resource name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost/mydatabase?autoReconnect=true"
    username="username"
    password="password"
    maxActive="25"
    maxIdle="5"
    maxWait="10000"
    validationQuery="Select 1"
/> 
```<br>See > Macro (jira)

 for info on how to configure multiple result sets. |
| Oracle | Thin Driver  
[Oracle 11g JDBC](http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html)  
[Oracle 12c JDBC](http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html) | ojdbc6.jar  
ojdbc7.jar | ```
<Resource
    name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="oracle.jdbc.OracleDriver"
    url="jdbc:oracle:thin:@www.some_server.com:1521:mysid"
    username="username"
    password="password"
    connectionProperties="SetBigStringTryClob=true"
    maxActive="25"
    maxIdle="5"
    maxWait="10000"
    validationQuery="Select 1 from DUAL"
/> 
``` |
| Oracle Advanced | Thin Driver   
[Oracle 11g JDBC](http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html)  
[Oracle 12c JDBC](http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html) | ojdbc6.jar  
ojdbc7.jar | See [Tomcat 6.0 using Oracle Universal Connection Pool](http://www.oracle.com/technetwork/articles/oem/ucp-jdbc-tomcat-355431.html) |
| Microsoft SQL Server | [jtds driver](http://jtds.sourceforge.net/) | jtds-1.2.2.jar | ```
<Resource
    name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="net.sourceforge.jtds.jdbc.Driver"
    url="jdbc:jtds:sqlserver://mysqlserver:1433/mydatabase"
    username="username"
    password="password"
    maxActive="20"
    maxIdle="10"
    maxWait="-1"
    validationQuery="Select 1"
/> 
``` |
| Microsoft SQL Server | Using Microsoft's jdbc driver | sqljdbc4.jar | Similar to the other examples here with parameters like the MS SQL Server example on [Data Source Profiles](https://appfire.atlassian.net/wiki/spaces/SQL/pages/74323164) |
| Derby | [Derby](http://db.apache.org/derby/) | derbyclient.jar | ```
<Resource
    name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="org.apache.derby.jdbc.ClientDriver"
    url="jdbc:derby://localhost:1527/dbname"
    username="username"
    password="password"
    maxActive="20"
    maxIdle="10"
    validationQuery="Select 1"
/>
``` |

# Differences Starting with Confluence 5.8 - 9.x

There was a significant change in configuration values between Tomcat 7 (before Confluence 5.8) and Tomcat 8 (after Confluence 5.8). Confluence administrators should review their *server.xml* configuration and make adjustments. 

|  | **Max Connections** | **Default Max Connections** | **Wait Time for Connection from Pool** | **Default Wait Time for Connection from Pool** | **Example Settings** |
| --- | --- | --- | --- | --- | --- |
| Tomcat 8 | **maxTotal** | 8 | **maxWaitMillis** (in milliseconds) | -1 (no limit) | - maxTotal="25"
- maxWaitMillis="10000" |
| Tomcat 7 | **maxActive** | -1 (no limit) | **maxWait** (in seconds) | 30 (seconds) | - maxActive="25" |

# Why is this Important?

Some customers have reported slow pages and related problems after upgrading Confluence. This is a likely consequence of running out of connections and having to wait for a connection to become available. The new default of **8** is very low for many higher volume use cases. This is exacerbated by a no limit wait which provides no feedback to page viewer that there is contention. By reviewing your previous configuration and updating it to use the new parameters, it should restore previous behavior.

# Additional Information

- [How to limit active database connections](https://appfire.atlassian.net/wiki/spaces/SQL/pages/74317986)
- [Apache DBCP Configuration](http://commons.apache.org/proper/commons-dbcp/configuration.html) - all configuration values related to Tomcat 8