After we have discussed the advantages and disadvantages of MyISAM and InnoDB, you might want to convert them back and forth and see the performance differences yourself. For small website, the difference may be minor but for a large popular application,
- MyISAM tables yield better performance results in selecting data records
- InnoDB tables give better performance results in inserting and updating data records
To change a MyISAM table to an InnoDB table:
ALTER TABLE table_name ENGINE = InnoDB;
To convert an InnoDB table to a MyISAM table:
ALTER TABLE table_name ENGINE = MyISAM;
You should also read:
- MySQL Engines: InnoDB vs. MyISAM – A Comparison of Pros and Cons
- MySQL Performance Tips
- Using SQL to Find records existing in one table but not in another
- MySQL: id BETWEEN start AND end Instead of LIMIT start, step For Better Database Performance
- MySQL, PHP: Store form textarea value or data to MySQL database table


Facebook
Twitter
Google Plus
{ 6 comments… read them below or add one }
According to the MySQL documentaion at http://dev.mysql.com/doc/refman/5.0/en/innodb-restrictions.html, converting from MyISAM to InnoDB is an “unsupported operation.”
Yeah, we’ll see about that.
Hi Will,
According to the docs that limitation/safeguard/whatever is only for “system” tables “(such as user or host).”
http://dev.mysql.com/doc/refman/5.0/en/converting-tables-to-innodb.html
Thanks for the tip, Drew.
Cheers for the post. Worked perfectly!
Thanks.
{ 2 trackbacks }