Looking at my database today notice this one table is MyISAM and also seems huge relative to all other tables with 147,835 rows. Is that normal? Shouldn't all tables be InnoDB? What would cause one to be MyISAM?

1 Answer 1


The searchindex table has to be MyISAM because up until MySQL 5.6.4, MyISAM was the only engine that supported full text search indexing.

Craft currently supports back to MySQL 5.1.

It is normal for that table to be large because it's keeping a record of every searchable thing on your web site.

  • Brad, if we're using MySQL 5.6, would there be any issue with switching the searchindex table to InnoDB?
    – John O
    Dec 15, 2015 at 16:06
  • 3
    We haven't done extensive testing with it, but I've seen several installations running it as InnoDB and haven't heard of any issues.
    – Brad Bell
    Dec 15, 2015 at 17:54
  • 1
    Read an interesting article from Percona awhile back on different results with InnoDB vs MyISAM full text. Depending on what queries you run, the results could be better (or more "correct") on InnoDB, depending on how you have it configured. How that affects Craft I suppose more testing is needed. The article is also a couple years old too, things could have changed... Dec 15, 2015 at 18:23

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.