MySQL database best practices
For best results, configure and maintain your MySQL database according to the vendor's requirements and use the Jive best practices.
UTF-8 requirement
Jive requires the UTF-8 character set. Use the following steps to ensure it's correctly set up:
- Use the following command to set the database default character set to UTF-8:
ALTER DATABASE jivecoredb DEFAULT CHARACTER SET utf8;
- After installation, add the following to the
<database>
section of thejive_startup.xml
file:<mysql><useUnicode>true</useUnicode></mysql>
- In the Jive Admin Console, under , ensure that the character set setting is set to UTF-8.
Installing the driver
The core application and the Activity Engine run using the MySQL JDBC Connector/J Driver. The Analytics database is not supported by MySQL.
You can set your classpath to include the MySQL JDBC Connector/J Driver by running the following from a command line as the jive user:
jive set webapp.custom_classpath_additions path/JDBC_Driver.jar
where path
is the path to the MySQL JDBC driver and
JDBC_Driver.jar
is the name of the JAR file.
Other best practices with MySQL
Default configuration can vary significantly by version, so it is important to consider the following:
- The default storage engine and all jive tables should use the InnoDB storage engine. Earlier versions of MySQL used BDB\MyISAM as the default storage engine.
- Ensure that the InnoDB Buffer is adequately sized. For dedicated installations with InnoDB storage engines, the buffer is typically set to 80% of the total server available memory.
- Storing attachments in your Jive database is not recommended. If you must do this, ensure that the maximum attachment size is allowed in the MySQL configuration. For more information, see Packet Too Large in the MySQL 5.1 Reference Manual at http://dev.mysql.com/doc/refman/5.1/en/packet-too-large.html.
- With case sensitivity, to avoid upgrade problems, use lower-case table names in MySQL
and set the
lower_case_table_namessystem
variable to 1 in the MySQL configuration. For more information, see Server System Variables in the MySQL 5.0 Reference Manual at http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_lower_case_table_names.