Storage Engines MySQL - aeggermont/datastores GitHub Wiki
The Basics
This page documents two storage engines most commonly used in MySQL: innoDb and MyISAM.
MyISAM
- It is the older of the two engines. The main features are the following:
- Good engine for a read only workload
- Supports FULLTEXT data type which allows very fast searches of large quantities of text data.
- It is only capable of locking an entire table for writing. This means only one process can update a table at a time.
- It lacks of journaling which makes things difficult to recover
InnoDB
- It is more a modern database engine, designed to be ACID compliant which guarantees database transactions to be processes reliably.
- Write locking can occur on a row level basis within a table. This means multiple updates can occur on a single table simultaneously.
- Data caching is handled in memory within the database engine. allowing caching on a more efficient row level basis rather than file block.
- Transactions are journaled independently of the main tables. This allows for much reliable recovery as data consistency can be checked.