This guide contains information on how the app must be configured for optimal performance.
Compatibility of databases with the app:
MySQL is supported from version 8 (2018) onwards.
SQL Server is supported from version 2005 onwards.
Postgres is supported from version 9.5 (2016) onwards.
After migrating or installing SQL for Confluence cloud app, navigate to the SQL for Confluence Configuration screen:
- Log in with the system administrator global permission.
- Navigate to > Settings > Atlassian Marketplace on the sidebar, or search SQL in the search text box.
- Click SQL Configuration to manage the app configuration.
The following configuration settings are available:
Global configuration
Here a Confluence administrator may configure global behavior of SQL for Confluence macros.
Parameter | Default value | Description |
---|---|---|
Limit rows processed | 250 | Select the maximum number of rows to be processed and displayed on Confluence pages. This setting prevents queries from using excessive resources that can result in a large number of rows. Individual queries can use the Maximum number of rows to retrieve and display parameter in the macro editor to override this value. The following options are available from a selection list:
Refer to this note to know more about the default behavior for common parameters available in the configuration as well as macro editor. |
Limit query time | 120 | Select the time in seconds that a query can take before a forced timeout. This prevents queries that take too long, from impacting other users. Individual users can use the Maximum number of seconds for query to run parameter in the macro editor to override this value. The following options are available from a selection list:
|
Rows per page | 10 | Select the number of rows to be displayed on a page. The total number of rows fetched depends on the limit applied on the number of rows to be processed (in Limit rows processed and Maximum number of rows to retrieve and display parameter in the macro editor). Based on this, a pagination bar is displayed below the table. The following options are available:
Refer to this note to know more about the default behavior for common parameters available in the configuration as well as macro editor. |
Transaction isolation level | Read committed | Specify the default isolation level to be used for transactions if the Transaction isolation level macro parameter did not specify a specific level. The following options are available for selection:
|
Disable anti-XSS mode | Off | Anti-XSS mode reduces exposure to XSS exploits related to SQL app macros. By default, the app respects Confluence's global Anti-XSS settings. This configuration allows an administrator to globally turn off anti-XSS mode only for the SQL Macro. To turn off anti-XSS mode, toggle the Disable anti-XSS mode to ON. |
Help us improve the product | On | Enable this option to allows us to collect some usage data that helps us improve our product continually. No private user data is sent. Please refer to this page to know more about the information collected if this option is enabled. |
Data source profiles
An administrator creates profiles that contain parameters used to access, query, and retrieve information from the required data source. In turn, users then choose a profile in the macro editor to display the information on Confluence pages. Some key points about profiles are:
- Profiles allow user authentication to be hidden from page viewers and editors. Only Confluence administrators have access to this information.
- Enables the macro editor to quickly configure the macro by reusing a shared definition for data source access.
- Any configuration change takes effect immediately.
Important information:
Administrators must ensure to use credentials of database users with read-only privileges for profiles intended for use with the SQL Query macro. We recommend creating a read-only database user to be used specifically with the SQL for Confluence - SQL Query macro.
At least one data source profile must be configured before using the SQL for Confluence - SQL Query macro.
How a profile affects macro behavior:
The SQL Query macro behaves as follows depending on the chosen database and the database privileges the user (configured in the profile) holds:
Database | Points to note |
---|---|
PostgreSQL MySQL | Macro creates a read-only session for the database connection established through the specified profile. Given SQL statement(s) or the script file is executed, and results are displayed in a table in the Preview panel of the macro editor.
|
Microsoft SQL Server | Given SQL statement(s) or the script file is executed, and results are displayed in a table in the Preview panel of the macro editor. Once the statements are run:
Thus, Confluence administrators must make sure to provide credentials of a user with read-only privileges configured in the database. |
The Data source profiles screen displays a complete list of profiles available for use with the macro, and also provides options to add, update, or delete profiles.
You can perform the following actions on this screen:
Click Add Profile to create a profile as follows:
- Click to edit the profile details. Click Update profile to save the changes after updating the relevant parameters, or, Cancel to return to the Data source profiles screen.
Click to remove the profile.
Ensure that there are no macros in pages which reference profile(s) to be deleted. After the profile is deleted, the macro cannot connect to the configured data source in the pages, and relevant error messages are displayed.
Create data source profiles
Clicking the Add profile button opens the Add profile wizard. The succeeding sections explain the information required to establish a connection with the required database.
Add profile wizard - Step 1
Select the database that the macro must access, query, and retrieve information.
Add profile wizard - Step 2
After selecting the relevant SQL database, provide details such as the database connection details, user authentication method, and more.
The following table lists the parameters to be provided:
Section | Parameter | Default value | Description | |||||
---|---|---|---|---|---|---|---|---|
Profile name | Enter the name to be used for the profile. Users can then select from the list of profiles displayed in the macro editor. This field is mandatory. | |||||||
Database connection | Hostname | Enter the host name or the IP address of the database server to be accessed. This field is mandatory. Configuration note Ensure that the database host allows connections from the SQL for Confluence app. This requires updating the host's firewall settings to allow these IP addresses:
If these addresses are not allowed, errors are generated and relevant messages are shown. | ||||||
Port | Enter the port number required to access the relevant database on the server. This field is mandatory. | |||||||
Database | Enter the database name the macros must query for information. This field is mandatory. | |||||||
Authentication type Important information: Administrators must ensure to use credentials of database users with read-only privileges for profiles intended for use with the SQL Query macro. | Authentication type | Basic | Select the authentication method to be used to connect to the specified database. This field is mandatory. The options are as follows:
| |||||
User | Enter the user name to be used to log in the required database or AWS account. Based on the value of Authentication type, provide the following:
This field is mandatory. | |||||||
Password | Enter the password to be used along with the user name to access the required database. This field is mandatory.
| |||||||
AWS region | Enter the AWS region (specified when creating the AWS account) where the relevant database is hosted. An AWS region is a physical location that contains clusters of data centers where cloud based services are accessed over the internet. For more information about regions, refer to the AWS global infrastructure documentation. This field is displayed only if Authentication type is AWS IAM. | |||||||
Key ID | Enter the AWS key ID of the user to log in the required database. This field is mandatory. This field is displayed only if Authentication type is AWS IAM. Access keys are long-term credentials for an IAM user or the AWS account root user. For more information about AWS access keys, refer to the AWS IAM documentation. | |||||||
Secret access key | Enter the AWS secret access key (part of a user's AWS access key) to be used to log in the required database. This field is mandatory. This field is displayed only if Authentication type is AWS IAM. For more information about AWS access keys, refer to the AWS IAM documentation. | |||||||
Test connection | Click this link to test whether a connection can be established with the required database using the specified authentication details. After the test is completed, either of the following indicators are shown:
| |||||||
Extended parameters | Limit rows processed | 250 | Select the maximum number of rows to be processed and displayed on Confluence pages. This setting prevents queries from using excessive resources that can result in a large number of rows. Individual queries can use the Limit rows processed parameter in the macro editor to override this value. The following options are available from a selection list:
Refer to this note to know more about the default behavior for common parameters available in the configuration as well as macro editor. | |||||
Limit query time | 120 | Select the time in seconds that a query can take before a forced timeout. This prevents queries that take too long, from impacting other users. Individual users can use the Limit query time parameter in macro editor to override this value. The following options are available from a selection list:
Refer to this note to know more about the default behavior for common parameters available in the configuration as well as macro editor. |
Priority used for common parameters in configuration and macro editor:
There are some parameters, such as Limit rows processed or Limit query time, that are available in Global configuration, profile configuration, as well as macro editor. Any parameter defined at the macro level overrides the values set at the Global or profile configuration levels. The order of overriding the default setting is:
Macro level parameter > Profile configuration > Global configuration
Add wizard - Step 3
Click Save profile to create the profile, or, Cancel to go back to the Data source profiles screen. The newly created profile is now displayed along with the connection status on the Data source profiles screen.
Helpful resources
- Migration guide to know more about migrating data from server/DC to cloud
- User guide to understand app usage