Install and configure MySQL (KOTS)
MySQL is the recommended database server. Follow these steps to install and configure it.
Important considerations
You must have full database admin permissions to the server hosting the MySQL database.
For the Jama Connect installation to succeed, you must first create two additional database schemas.
If you need to upgrade the MySQL, see "Install and configure MySQL (upgrading traditional to KOTS)" in Jama Connect User Guide 9.17.x.
Recommended settings and sample
The following recommended settings require 8 GB of memory allocated to MySQL Server for a typical installation and 16 GB for an enterprise installation.
These settings can be added to your my.cnf file (Linux) or my.ini file (Windows).
Property | Typical installation | Enterprise installation |
---|---|---|
max_allowed_packet | 1 GB | 1 GB |
tmp_table_size | 2 GB | 2 GB |
max_heap_table_size | 2 GB | 2 GB |
table_open_cache | 512 | 512 |
innodb_buffer_pool_size | 2 GB | 12 GB |
innodb_log_file_size | 256 MB | 256 GB |
innodb_log_buffer_size | 12 MB | 12 MB |
innodb_thread_concurrency | 16 | 16 |
max_connections | 151 | 351 |
wait_timeout | 259200 | 259200 |
Here is a sample text config file at an enterprise level. You must add the following values for your environment:
bind-address=0.0.0.0 key_buffer_size=16M max_allowed_packet=1G thread_stack=192K thread_cache_size=8 tmp_table_size=2G max_heap_table_size=2G table_open_cache=512 innodb_buffer_pool_size=12G innodb_log_file_size=256M innodb_log_buffer_size=12M innodb_thread_concurrency=16 max_connections=351 wait_timeout=259200
To install and configure MySQL:
Make sure that the InnoDB engine is enabled.
Download and install a supported version of MySQL.
On the MySQL database server, create an empty Jama Connect schema / database that uses UTF8:
CREATE DATABASE jama character set utf8mb4;
On the MySQL database server, create two additional database schemas and a user ("jamauser") with the ability to access, create, and update tables within the database:
CREATE DATABASE saml; CREATE DATABASE oauth; CREATE USER 'jamauser'@'%' IDENTIFIED BY 'password'; CREATE USER 'oauthuser'@'%' IDENTIFIED BY 'password'; CREATE USER 'samluser'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON jama.* TO 'jamauser'@'%'; GRANT ALL PRIVILEGES ON oauth.* TO 'oauthuser'@'%'; GRANT ALL PRIVILEGES ON saml.* TO 'samluser'@'%';
Create a database schema for Quartz to support horizontal scaling in KOTS:
CREATE DATABASE quartz; CREATE USER 'quartzuser'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON quartz.* TO 'quartzuser'@'%'
Restart the database server.