I’m trying to fix some serious issues on a big wordpress installation (about 600K posts) and noticed that the wp_posts table is INNODB but wp_posts_meta is MyISAM
looks a little weird for me.
Anyone knows of possible issues with this table engines configurations, expecially with joins between table with different engines ?
thanks
I’m only aware that transactions can break when mixing innodb & myisam. In your case that is no problem, as wordpress is not using transactions. However, it is a strange choice to make the posts table innodb. Mixing the types can be beneficial, as myisam tends to be faster on tables that are not changed that often. When a row on a myisam table is updated, the whole table is locked, whereas innodb just locks that row.
The post table is such a table (write occasionally, read many times). But your setup seems to be the other way around. It’s not a big problem, but you are not gaining anything by keeping that table innodb.
Concerning your problem: as you are not specifying what your issues are I can’t say if they sound related. But I’d guess that this isn’t the culprit.
Disclaimer: A lot of people claim that innodb is just as fast as myisam, if correctly configured. That might be, but there are not a lot of well configured setups around, let alone people who know how to optimise mysql for the task given. Also a lot of people are on shared hosts or are otherwise not able to change the settings themselves. For them switching a table to innodb (or the other way around) could work.