Configuring QIE with MariaDB¶
This is the default database that is installed as part of the QIE install. A default user qie (with password qie) and schema qie are created. The schema name, username, and password can be customized during install if you prefer different values.
Minimum version
QIE requires MariaDB 10.4 or later.
Create a QIE Database Schema¶
Using the MySQL Workbench or a similar tool, connect to the MariaDB database server where the QIE database resides and create a database schema called 'qie' or whichever name you wish to use for the QIE related database.
Create a Database User with DB Owner Privileges to the QIE Database Schema¶
Create a database user to be used by QIE for connecting to the QIE database schema created above. This user must be configured with full privileges to the QIE database schema as the QIE application handles the creation and management of all database tables, indexes, etc. Ensure that the default database associated with the user is set to the QIE database schema created above.
Setup In-Memory Tables (High Availability Only)¶
In-Memory tables are required for High Availability in QIE. MariaDB allows for In-Memory tables by default.
Configure the QIE Service Manager to connect to MariaDB¶
Add the following Java Options in the Arguments on the Startup tab of the QIE Service Manager:
-Dconnection.driver=org.mariadb.jdbc.Driver
-Dconnection.url=jdbc:mariadb://{server}:{port, default=3306}/{database, default=qie}
-Dhibernate.dialect=com.qvera.qie.persistence.MariaDB114UnicodeDialect
-Dconnection.username=???
-Dconnection.password=???
Note
Use the following list to select your correct MariaDB Server dialect:
MariaDB 10.4, use MariaDB103UnicodeDialect
MariaDB 10.5, use MariaDB103UnicodeDialect
MariaDB 10.6, use MariaDB106UnicodeDialect
MariaDB 10.7, use MariaDB107UnicodeDialect
MariaDB 10.11, use MariaDB1011UnicodeDialect
MariaDB 11.4+, use MariaDB114UnicodeDialect
For MariaDB versions prior to 5.3, use MariaDB53UnicodeDialect.
Note
Refer to the Database Related Java Options section of this guide for a complete description of each of the above options
Connecting to MariaDB over TLS
To require an encrypted connection between QIE and the MariaDB server, append sslMode to the -Dconnection.url value. MariaDB Connector/J 3.x supports these modes:
| Mode | Behavior |
|---|---|
disable |
Plain-text connection (default). |
trust |
TLS is used, but the server's certificate is not validated. |
verify-ca |
TLS is used, and the server's certificate must chain to a trusted CA. |
verify-full |
Same as verify-ca plus the server's hostname must match the certificate's Common Name / SAN. |
For verify-ca or verify-full, the CA that signed the server's certificate must be trusted by the QIE host's JVM. Either import it into the default JRE truststore, or point QIE at a separate truststore with -Djavax.net.ssl.trustStore=/path/to/truststore.jks and -Djavax.net.ssl.trustStorePassword=<password> in the Service Manager Java Options.