Vždy používejte InnoDB jako výchozí.
V MySQL 5.1 později byste měli používat InnoDB. V MySQL 5.1 byste měli povolit plugin InnoDB . V MySQL 5.5 je plugin InnoDB ve výchozím nastavení povolen, takže jej stačí použít.
Rada před lety byla, že MyISAM byl v mnoha scénářích rychlejší. To však již neplatí, pokud používáte aktuální verzi MySQL.
Mohou existovat některé exotické rohové případy, kdy MyISAM funguje o něco lépe pro určité pracovní zátěže (např. skenování tabulek nebo práce pouze s velkým objemem INSERT), ale výchozí volbou by měla být InnoDB, pokud nedokážete máte případ, který MyISAM umí lépe.
Mezi výhody InnoDB kromě obvykle uváděné podpory transakcí a cizích klíčů patří:
- InnoDB je odolnější vůči poškození tabulek než MyISAM.
- Zamykání na úrovni řádků. V MyISAM čtenáři blokují autory a naopak.
- Podpora velkého fondu vyrovnávací paměti pro data i indexy. Klíčová vyrovnávací paměť MyISAM je určena pouze pro indexy.
- MyISAM stagnuje; veškerý budoucí vývoj bude v InnoDB.
Viz také moje odpověď na MyISAM versus InnoDB