MyISAM vs InnoDB for Forums I want to design a forum script with MySql. Which database engine would have better performance? MyISAM or InnoDB ?
Always use InnoDB by default.

InnoDB is durable and crash-safe.  Your database will not be corrupted in a crash.  MyISAM is very susceptible to data corruption.  This should be a more important consideration than performance -- unless you don't really care if you lose your data.

InnoDB caches both data and indexes in RAM.  MyISAM caches only indexes in RAM.  So if you have enough RAM, queries will almost certainly be faster in InnoDB.

InnoDB is the default.  It has been MySQL's default storage engine since MySQL 5.5 (circa 2010).

InnoDB continues to improve.  MyISAM is not being improved.  All of the storage engine engineering work is going into InnoDB.

InnoDB is faster anyway.  Here's a performance comparison from way back in 2007 that shows InnoDB beats MyISAM in most tests:  http://www.mysqlperformanceblog.com/2007/01/08/innodb-vs-myisam-vs-falcon-benchmarks-part-1/
Of course, benchmarks results show the performance of the benchmark, not the performance of your application.  If you want a more authoritative answer, you should run sysbench to test your database on your hardware.


There are cases where MyISAM is faster, but these cases are becoming more and more rare.  For instance, doing table-scans.  Or SELECT COUNT(*) FROM Table.  But you should treat InnoDB as the default storage engine choice until you can demonstrate a case where MyISAM beats it.