Difference Between InnoDB and MyISAM

  • The big difference between MySQL Table Type MyISAM and InnoDB is that InnoDB supports transaction
  • InnoDB supports some newer features: Transactions, row-level locking, foreign keys
  • InnoDB is for high volume, high performance

Most people use MyISAM if they need speed and InnoDB for data integrity. You can use more than one or any combination of these table types in your database. Remember to asses the needs of your application before building it. Even though MyISAM is faster than InnoDB in the MySQL world, InnoDB is fast compared to any database engine.With InnoDB you get transactions, speed and integrity three features not usually used in the same sentence.

InnoDB has been designed for maximum performance when processing large data volumes. Its CPU efficiency is probably not matched by any other disk-based relational database engine.

Fully integrated with MySQL Server, the InnoDB storage engine maintains its own buffer pool for caching data and indexes in main memory. InnoDB stores its tables and indexes in a tablespace, which may consist of several files (or raw disk partitions). This is different from, for example, MyISAM tables where each table is stored using separate files. InnoDB tables can be of any size even on operating systems where file size is limited to 2GB.

So, what do you think about those engines?? Please feel free to discuss it.

For more information visit http://dev.mysql.com/

Thanks

22 Comments »

  1. totally bingo

    totally bingo

  2. sripathi said

    i need more information about those structures and transactions, like which best for tractions…..

  3. senthil said

    Since we have higher performance with added features in Innodb than myISAM .why should we have it seperated ? rather than giving Innodb as updated version of myISAM . Any how people going to use Innodb only. why does myISAM still exist?

  4. [...] reading Tapos Blog post about the differences between InnoDB and MyISAM database engines i found out that InnoDB does not [...]

  5. MyISAM databases support the MATCH and AGAINST keywords for searching, very useful for that purpose, but the InnoDB offers better speed and space consumption.

  6. Sitthykun said

    can you tell me, what size of the maximum storage of MySQL?
    both innodb and myisam.

    cheer!

  7. Joey said

    My experience with MyISAM and InnoDB, is that MyISAM is optimal for big nasty logs and/or if you need to do a relevancy-relied full text search (as another author stated, with the help of MATCH and AGAINST). This compared to InnoDB that is optimal when it comes to handling and storing integers, using transaction-critical applications, etc.

    Oh, and a protip to all developers: when logging things, make it log things efficient; don’t make the table bigger than it needs to be. Start by using INET_ATON to store IP-adresses as 32-bit integers instead of 16 digit char. Always mind the scale of volumes for those poor DBA’s sake ;-)
    Also, check out the facebook-patch for InnoDB – they’ve really made some cool optimizations worth checking out.

    cheers
    /Joey

  8. author said

    comment

  9. a said

    a a a

  10. Showket said

    This article is really help me to understanding InnoDB n MyISAM. Thanks

  11. Thanks for the same , this really helped me

  12. Atish Mahadik said

    Thanks for the same, i want to join this blog to share & communicate solve problems

  13. Lawrence said

    I think MyIsam is for small business while InnoDB is more for commercial use because of its data integrity. Overall I think one would make a decision based on how they feel about the data they are trying to store within the db. Just my thoughts… Open to adverse comments. Thanks Lawrence Owens

  14. Ankit said

    I am trying to fetch data from the database and trying to generate excel sheet but it takes more than 15 mints. Now in which way MyISAM and InnoDB can be useful. Please reply ASAP.

  15. Syntax3rror said

    Thanks.

  16. hey brothers!!!
    I am a newbie…. please tell me what is the difference mySql free version and paid version…???
    1) What more facility I’ll get if I use paid version…
    2) What is the limitation of free version…
    3) I am building a software that will store billions of data in the database… in this case if use free version what will be the possible problem in the long run…

    please brother… if possible email me:>> tanvir_mailbox@yahoo.com

  17. Rahul said

    Thanks for this post. I got your link by searching in google for “InnoDB vs. MyISAM”.

    This is helpful, I have a clear understanding about these two.

  18. I appreciate this article, the way how you have sumed up everything into such simple words, now I can go full confidence in my tomorrow’s database viva. Thank you very much sir. I do have a question sir, can you please refer a book to me where i can study database working in depth at physical, logical level. Thanks once again.

  19. great post. I was little confused about the difference of innodb and MYISAM and now it is clear.
    Thanks/

  20. Very useful post. I really enjoyed reading your blog. This post clear me about all the difference between MYSIAM and INNODB. Thanks

  21. Useful post… your writing-style is pretty much helpful.

  22. Tom Watson said

    Very useful post. I really appreciate your blog.
    Thanks

RSS feed for comments on this post · TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.