InnoDB Table Type / MyISAM Default Storage Engine


New member
Hello. I have searched and found similar questions but no definitive answers so pardon me if there is one.

I am new customer and have a test version running after a vB 3.8.11 import in a shared server environment. Smallish board: 3000 members / 200,000 posts

I immediately noticed that the XF test forum was slower than the vB version and, sometimes, hangs. (it seems after an ACP change of any sort - could be imagining that though). PHP ver. 7.1 as the production forum is still the vB 3.8.11 that requires no more than 7.1.

I did some looking around here and found some discussions that mentioned InnoDB and MyISAM storage engines (out of my depth here).

So, I ventured into phpmyadmin and noticed that for my test DB, most of the XF tables, the Type was list as InnoDB (with a few exceptions).

At the bottom of the table list I see that the default storage engine for the server is MyISAM (see images).

My question, naturally is, should this be changed? I am assuming this would be a request directly to the hosting company?

Thanks for looking and for any advice you can render.



  • db1.jpg
    64.4 KB · Views: 13
  • db2.jpg
    53.1 KB · Views: 14
  • db3.jpg
    59 KB · Views: 14
Last edited:


XenForo moderator
Staff member
My question, naturally is, should this be changed?
No, the table engine shouldn't be changed.
The tables have been defined that way for specific reasons.

What you should look at is tuning the server to work with XF.



New member
@Brogan, thanks for the reply. Perhaps I phrased my post and question incorrectly (likely ;))

I realize that the Table "Type" is meant to be InnoDB, and is that Type, according to PHPmyadmin (shown in images).

Does that table specification "Type" automatically utilize InnoDB as the correct engine despite the fact that there isn't an Engine field in the table definition? e.g. Engine=InnoDB

What was throwing me was the fact that Myisam is shown at the bottom of image 3 as the default engine on that server.

As I said, I'm a newb to this having come from 17 years of being an Admin for a vB 3 board.

Thanks again.


XenForo moderator
Staff member
The default storage engine set just means that any tables created will use that, unless it is specifically overridden using e.g. ENGINE = MEMORY

There will be a warning/error message if the database does not support a specific engine type, such as InnodDB, and that will typically be due to it being disabled in my.cnf.

Based on your screenshots, I don't see any issues with the DB.