1.2k questions
1.4k answers
361 comments
339 users
If you see this error in QIE while using MySql 8 for the QIE database switch to the MySql8UnicodeDialect.
Your JDBC/database connection details should look something like this:
-Dconnection.driver=com.mysql.cj.jdbc.Driver
-Dconnection.url=jdbc:mysql://[your mysql instance name]:[port to your mysql instance]/[your database name]?serverTimezone=[timezone matching your mysql instance]&sslMode=DISABLED
-Dhibernate.dialect=com.qvera.qie.persistence.MySQL8UnicodeDialect
Adjusted for your MySql instance details/configuration.
NOTE: This is a custom dialect that address an issue when executing SHOW INDEX or SHOW INDEXES against a MySql 8 database using MySql Connector/j 8.
This dialect adds this registration:
registerHibernateType(Types.NULL, "string");
This is not important for QIE users but may be helpful to other developers that use hibernate.
See also:
What dialects are available in QIE?
How to configure the JDBC connection to the QIE database for MySql/MariaDB?
What -Dconnection.url configuration properties/parameters are recommended when using MySql/MariaDB?
Resources:
https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-charsets.html
https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-configuration-properties.html