After update to Civicrm 5.8.0 I got a:

MyISAM Database Engine
Your database is configured to use the MyISAM database engine. CiviCRM requires InnoDB. You will need to convert any MyISAM tables in your database to InnoDB. Using MyISAM tables will result in data integrity issues.

Had a look into the db, found out it's just about three tables: enter image description here

Is it save to do ALTER TABLE tablename ENGINE=InnoDB;?

  • Temp tables should be generating warnings: See lab.civicrm.org/dev/core/issues/462 where this was fixed. While you can change the database engine safely, this should (and will) get fixed in the core product so it doesn't generate this warning. Dec 12, 2018 at 22:40

3 Answers 3


Yes, you can change the engine but they are temporary tables so will disappear soon - and more will appear.

It is a warning rather than an error. The data integrity message is intended to relate to the permanent tables, not these temporary ones. Since your permanent tables show as InnoDB you can safely ignore this message.

I've logged this here: https://lab.civicrm.org/dev/core/issues/591

  • The fix for this has gone into 5.8.1
    – Aidan
    Dec 13, 2018 at 10:05

You could adjust to remove error, but these tmp tables will always by MyIsam, every time they are created.

I am not sure if setting the default storage engine as InnoDB is okay.


We've been seeing this in Drupal installs as well (with CiviCRM 5.6.1) so this isn't a brand new issue. (Also - welcome to Civi SE, Stefan! We're glad you're here.)

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.