[support] MyISAM vs InnoDB

Ivan Sergio Borgonovo mail at webthatworks.it
Sat Mar 21 18:28:59 UTC 2009


On Sat, 21 Mar 2009 14:18:13 +0100
Daniel Carrera <daniel.carrera at theingots.org> wrote:

> Hello,
> 
> For a Drupal 5 site, which MySQL engine should I use? MyISAM or
> InnoDB? I know that in general the answer is "it depends", but I
> was hoping that for the specific case of Drupal there might be a
> simpler (more useful) answer.
> 
> Any thoughts? I am happy to read documentation on the topic if
> there is any to be found. Today I've just been reading about
> MyISAM vs InnoDB in general.

It really depends on what you need to do. If you don't know it I'd
go for MyISAM since most of the features you may be looking for in
InnoDB are not really fully exploited by stock Drupal.

The reasons that may make you chose InnoDB may be the same to
consider to add to the list PostgreSQL, but it really depends on
what is your specific need.

Consider that anyway PostgreSQL support is (was) not as good as
MySQL, anyway I never had serious issues.

The main annoyance was waiting some patch got included into core and
having to re-patch every time a new point release comes out.

But in my experience the problems you may run into can be patched in
5 min.

Summing it up:

Drupal doesn't have support for transaction or referential integrity
but you may need it if you're developing your own modules.
If you've several writes or high concurrency and data integrity is
important PostgreSQL may be an interesting option.

If you've a lot of read, and you don't mind having to deal with
some inconsistency , MyISAM and replication may be fine.

I think InnoDB is "in between" without shining for any aspect.
If I were looking for transactions and data integrity I'd take the
InnoDB route just if I already invested a lot in MySQL.

-- 
Ivan Sergio Borgonovo
http://www.webthatworks.it



More information about the support mailing list