As you all know that MySql 8.X will be released soon.

So is Magento 2 compatible with MySql 8?


Magento 2 doesn't support MySQL 8 so far.

The information schema statistics is cached in MySQL 8 so there a lot of issues with auto increments and mview change logs in Magento 2.

  • 2
    Could you add a reference to an official source for your statements? – 7ochem Jun 26 '18 at 13:49
  • In this thread someone says that it works. I've tried it as well and my first impression is also that it works. Would be interessting to know which problems could arise. – robsch Sep 13 at 11:24

Yes Magento 2 is compatible with MySQL 8

However for Magento's latest version MySQL 5.6 can be used (you can also use MySQL 5.6.x) Other compatible database for Magento 2 will be MariaDB 10 and above

  • 2
    Could you add a reference to an official source for your statements? – 7ochem Jun 26 '18 at 13:49

Magento Latest version 2.2.3 requirements:

MySQL 5.6, 5.7

Magento is also compatible with MySQL NDB Cluster 7.4.*, MariaDB 10.0, 10.1, 10.2, Percona 5.7, and other binary-compatible MySQL technologies.

  • 2
    So what is exactly your answer? Is it or is it not supported? Advised (minimum) requirements does not have to explicitly exclude support for newer versions... – 7ochem Jun 26 '18 at 13:51
  • 2
    That's not an official source, that's just another guy saying it without any good references – 7ochem Jun 28 '18 at 7:55
  • HERE IS OFFICIAL DOCUMENT devdocs.magento.com/guides/v2.2/install-gde/prereq/mysql.html – Jugal Kishor Jun 29 '18 at 12:59
  • 2
    That is only saying that it is recommended to use 5.7. It doesn't state anything about MySQL 8. Magento probably hasn't changed that page (or looked at that page) since the release of MySQL 8. I think the only valid answer to this question is a source that explicitly confirms that it works or doesn't work. – 7ochem Jul 2 '18 at 9:24

Expanding on CedCommerce anwer:

I installed Magento with mysql 8 and it works. The new default caching_sha2_password authentication plugins however introduces a breaking change as detailed in this article:


But you can still use the mysql_native_password authentication plugin with which magento will run. When you create the MySQL user for the Magento database this is the code you have to run:

CREATE USER 'user'@'localhost' IDENTIFIED WITH mysql_native_password BY '<password>';

Or if you have an existing user, change the authentication plugin with this line:

ALTER USER 'user'@'localhost' IDENTIFIED WITH mysql_native_password BY '<password>';

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.