MySQL upgrade

MySQL 5.7 reached EOL. Upgrade to MySQL 8.x today

In October 2023, MySQL 5.7 reached its end of life. As such, it will no longer be supported and won’t receive security patches or bug fixes anymore. 

At Mattermost, we’re committed to helping customers collaborate securely. To this end, we recommend all customers using MySQL 5.7 to upgrade to MySQL 8.x or later.

Starting with Mattermost v9.5 onwards, we will stop supporting MySQL 5.7 entirely. 

To make sure your Mattermost instance continues working without issue, please upgrade to MySQL 8.x today.

Changes with MySQL 8

With MySQL 8, there have been some changes in the default behavior which are highlighted here. Most importantly:

  1. The default collation changed to utf8mb4_0900_ai_ci. Users have two options to accommodate this update: either change the collation of all old tables to the new collation or change the default collation after upgrade to whatever the old collation was so that new tables continue to have the same value. We’ve seen with various customers that changing collation on tables takes a long time as it rebuilds all the indexes along with it as well. Therefore, we recommend exercising the second option and changing the default collation immediately after upgrade. For more information, go here.
  1. MySQL 8.0.22 contains an issue with JSON column types changing string values to integers, which is preventing Mattermost from working properly. We advise users to avoid this database version.

Questions or concerns?

If you have any questions or concerns about this migration, please contact our product team.


Agniva De Sarker is a Backend Engineer at Mattermost. He is an avid open source contributor and is very passionate about Go and WebAssembly.