Starting October 11, 2024 (Zephyr Enterprise 8.2), the Zephyr Enterprise documentation moved from its current location on Atlassian to a dedicated, standalone Zephyr Enterprise documentation page. Please see: https://support.smartbear.com/zephyr-enterprise/docs/en/zephyr-enterprise/zephyr-installation---upgrade-guides/zephyr-on-premise-production-installation/connecting-to-an-external-database/mysql.html
Supported Databases
MySQL Community Server
- Versions: 8.0.35 series
- JDBC Driver Version:
- For the 8.0.35 series Download here
- Versions: 8.0.35 series
Prerequisites
- Check whether your version of MySQL is supported
- Have an installation of MySQL ready
- Ensure the JDBC driver is stored locally on the Application Server where Zephyr will be installed
Configure the MySQL Database
The following steps will need to be followed:
- Step 1: Login to your MySQL Server
- Step 2: Create a new user for Zephyr
- Step 3: Set permissions for remote access
- Step 4: Set Memory and Max Connections
- Step 5: Install Zephyr and Connect to the Database
Step 1: Login to your MySQL Server
Open the command prompt and navigate to your MySQL installation folder (i.e. C:\Program Files\MySQL\MySQL Server 8.0.35\bin)
Establish a connection to your MySQL server by using the command:
mysql.exe -uroot
In this example the username is root. In a new MySQL instance, root is the default user and can be logged in without a password. If you are using an existing MySQL Server instance, the username and password may be different.
Step 2: Create a new user for Zephyr
Create a new database user which Zephyr will connect as. The command to create a new user is seen below:
CREATE USER 'zephyrDBuser@'localhost' IDENTIFIED BY 'zephyrDBuserPass';
Step 3: Set permissions for remote access
Now type the below command to make the Database accessible remotely.
grant all on *.* to zephyrDBuser@'127.0.0.1' identified by 'zephyrDBUserPass';
zephyrDBuser represents the username and ZephyrDBuserPass is the password for the newly created user from Step 2.
The '*.*' is granting permissions to all databases. Replace 127.0.01 with the IP address of the server Zephyr will be installed on. This command will grant access to ALL databases for the IP addresses given. The minimum permission requirement are the privileges to create and populate tables.
If you are installing the database with data center in mind, you will need to grant permissions for each node in the cluster.
Checking permissions
To check permissions for all users run the following command:
SELECT * from information_schema.user_privileges;
Now you an access your MySQL database remotely from the designated IP(s).
Step 4: Set Memory and Max Connections
Navigate to the my.ini file (Windows) or my.cnf (Linux), the default locations are the MySQL root folders.
Set the following values for the parameters:
Parameter | Minimum value |
---|---|
innodb_buffer_pool_size= | 4096M |
query_cache_size= | 1M |
key_buffer_size= | 8M |
max_connections= | 500 |
If no lines contain these parameters, then create new lines for them.
Queries for checking Memory
To check values of a parameter, use the following SQL queries:
SELECT @@innodb_buffer_pool_size; SHOW VARIABLES LIKE 'query_cache_size'; SHOW VARIABLES LIKE ' key_buffer_size '; SHOW VARIABLES LIKE 'max_connections';
Step 5: Install Zephyr and Connect to the Database
Now the MySQL database is ready, open the Zephyr installer. The wizard will take you through the setup steps.
By default, the binary logging is enabled in MySQL 8.0.35 Customers need to disable it while upgrading their MySQL from 5.7.x to 8.0.35
Note
MySQL Logging
If you are having problems with your MySQL database after making these changes, please consult your OS's application logs for issue details.