可能的重复:
MyISAM 与 InnoDB
MySql 中哪个存储引擎最好?InnoDb 还是 MyIsam?
没有“最好”,这取决于您/您的应用程序需要什么。
您可以在参考手册中阅读此处的差异:
InnoDB: 用于 MySQL 的事务安全(符合 ACID)存储引擎,具有提交、回滚和崩溃恢复功能以保护用户数据。InnoDB 行级锁定(不升级到更粗粒度的锁定)和 Oracle 风格的一致非锁定读取提高了多用户并发性和性能。InnoDB 将用户数据存储在聚集索引中,以减少基于主键的常见查询的 I/O。为了维护数据完整性,InnoDB 还支持 FOREIGN KEY 引用完整性约束。InnoDB 是 MySQL 5.6 中的默认存储引擎。
MyISAM: 这些表占用空间很小。表级锁定限制了读/写工作负载的性能,因此它通常用于 Web 和数据仓库配置中的只读或以读取为主的工作负载。
“最好的”取决于很多事情:
MyISAM 没有关系(外键),如果你想保持表之间的完整性,你必须编写一些触发器,而在 InnoDB 中你可以使用“DELETE ON CASCADE”和这些东西。但是 InnoDB 在迁移时速度较慢,因为它必须检查约束。
有关更多信息,您可以快速浏览:
http://www.devshed.com/c/a/MySQL/Comparison-of-MyISAM-and-InnoDB-MySQL-Databases-57392/