Skip to end of banner
Go to start of banner

Examples - 11.x

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

On this page

Overview

This page provides examples for configuring application server-based data sources across different versions of Confluence with varying configurations.

Confluence 8.0 and higher

The SQL for Confluence (Pro Edition) app version 11.x has removed the support for application server-defined data sources in Confluence 8.x. (Atlassian has ended support for the data source connections in Confluence 8.0. For more information, refer to Configuring a data source connection.)

In Confluence 8.x, we recommend reconfiguring the application server-defined data source profile to the connection string profile. For more information, refer to How to convert an application server defined data source profile to a connection string profile.

SQL for Confluence (Pro Edition) app version 11.x works seamlessly with Confluence 7.x (Confluence 7.4 to Confluence 7.20) versions, including support for application server-defined data sources (JNDI data source connections).

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

postgresql-9.3-1103.postgresql-42.2.2.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

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"
/> 


See SQL-146 - Getting issue details... STATUS for info on how to configure multiple result sets.

Oracle

Thin Driver
Oracle 11g JDBC
Oracle 12c JDBC

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
Oracle 12c JDBC

ojdbc6.jar
ojdbc7.jar

See Tomcat 6.0 using Oracle Universal Connection Pool.

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.

<Resource
    name="jdbc/myDS"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
    url="dbc:sqlserver://localhost:1433;database=testing;"
    username="username"
    password="password"
    maxTotal="25"
    maxWaitMillis="10000"
    maxIdle="10"
    validationQuery="Select 1"
/> 

Derby

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, shipped with Confluence versions before 5.8.

Database

Information

JDBC Driver Example

Resource Configuration

PostgreSQL

PostgreSQL JDBC

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

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"
/> 


See SQL-146 - Getting issue details... STATUS for info on how to configure multiple result sets.

Oracle

Thin Driver
Oracle 11g JDBC
Oracle 12c JDBC

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
Oracle 12c JDBC

ojdbc6.jar
ojdbc7.jar

See Tomcat 6.0 using Oracle Universal Connection Pool.

Microsoft SQL Server

jtds driver

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.

Derby

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 

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


Max ConnectionsDefault Max ConnectionsWait Time for Connection from PoolDefault Wait Time for Connection from PoolExample Settings
Tomcat 8maxTotal8maxWaitMillis (in milliseconds)-1 (no limit)
  • maxTotal="25"
  • maxWaitMillis="10000"
Tomcat 7maxActive-1 (no limit)maxWait (in seconds)30 (seconds)
  • maxActive="25"

Why is this important?

Some of our customers have reported slow pages and related problems after upgrading their Confluence versions. 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 connections are very low for high-volume use cases. This is exacerbated by a no limit wait time, which provides no feedback to page viewer that there is a contention. By reviewing your previous configuration and updating with the new parameters, you should be able to restore the past behavior.

Additional information

  • No labels