[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 546
  • Last Modified:


hello experts..
what are the differnces between MyISAM,Heap,ISAM and Merge when creating tables in Mysql db ?
1 Solution
Hi yazan3000,

MyISAM - MySQL's implementation of ISAM, Does not support transactions or foreign keys, is extremely fast and excels in read-only enviornments,
             or read/write with a small/moderate number of users. For transactions/Large read/write capabilities check out InooDB
Merge - A merge table is actually a collection of tables, this allows you to have tables that exceed the maximum file size for your OS.
         This allows for extremely large tables over 2gb.  I think this only works with MyISAM tables.
HEAP - Tables are stored temporarily in memory, they do not survie  a reboot, but are very fast and efficient in read-only setups

check this out for more info

From an end user perspective, MyISAM is what you should be using unless you have reason to choose otherwise.

InnoDB is what you should use when you need row-level locking, foreign keys, and transactions.

HEAP is what you use when you need a very fast in-memory table, but a good buffer on MyISAM can have similar performance without losing the table in a power failure.

Merge is a way of grouping identical MyISAM tables into a super table.

ISAM is old, don't touch it.

So the moral of the story is: Use MyISAM until you need something more.

Mike Hillyer

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now