Why use InnoDB over MySIAM [duplicate] Why use InnoDB over MySIAM [duplicate] database database

Why use InnoDB over MySIAM [duplicate]


Pros & Cons of InnoDB & MyISAM -

  1. InnoDB recovers from a crash or other unexpected shutdown by replaying its logs.
  2. InnoDB can be run in a mode where it has lower reliability but in some cases higher performance.
  3. InnoDB automatically groups together multiple concurrent inserts and flushes them to disk at the same time.
  4. InnoDB flushes the transaction log after each transaction, greatly improving reliability.
  5. Unlike InnoDB, MyISAM has built-in full-text search
  6. MyISAM is still widely used in web applications as it has traditionally been perceived as faster than InnoDB in situations where most DB access is reads.
  7. While writing/updating data into a InnoDB table, only that particular row is locked, whereas in MyISAM the entire table is locked.
  8. InnoDB provides Full Transaction support.


How about transactions and concurrent read/writes? Crash recovery is better as well. There are some features that are only available using MyISAM, like full text search, but unless you need these, I would go with InnoDB.


The creator of InnoDB - Heikki Tuuri, use th following email signature.

InnoDB - transactions, row level locking, and foreign keys for MySQL