简单的表达。

是非事务性存储引擎MyISAM。

InnoDB存储引擎是一个支持交易。



InnoDB引擎更适合更多的应用到插入和更新操作

MyISAM是适合频繁查询的应用



MyISAM表锁。

InnoDB是合理设计为行锁。

MyISAM没有死锁。



最大的区别是MyISAM适合小数据和小并发;InnoDB适合大数据、大并发。最大的区别是在锁的水平。



MyISAM类型不支持事务处理等高级处理,而InnoDB类型的表supports.myisam型强调性能,其执行时间比InnoDB类型更快,但是不提供事务支持。InnoDB提供事务支持,如外部键等高级数据库功能。总结,你可以使用基于数据表的不同采用不同的存储类型。MyISAM是一个文件存储,并可以直接使用不同的操作系统之间。



InnoDB:

MySQL InnoDB提供交易安全(交易安全与交易类型,酸)表(提交),恢复(回滚)和崩溃修复能力(崩溃恢复能力),InnoDB提供锁定行级提供解锁读(非锁定的阅读选择),与Oracle类型一致。这些特点都提高多用户并发操作的性能。没有必要扩大锁(锁升级)在InnoDB表因为InnoDB柱锁(行级锁)适用于非常小的space.innodb是第一台发动机在MySQL提供外键约束。InnoDB的设计目标是处理大容量数据库系统,其CPU利用率是不可比的基于关系数据库引擎其他磁盘。技术上,InnoDB是一个完整的数据库系统放在MySQL的背景。InnoDB自己设置缓冲池的内存缓存中的数据和存储数据和索引的表空间的index.innodb。它可能包含多个文件,这与其他文件不同。例如,在MyISAM,表存储在单独的文件中,InnoDB表的大小是有限的操作系统的文件大小,通常2 gb.innodb,所有的表都保存在同一文件ibdata1数据(或多个文件或单独的表空间文件),这是比较好的备份。它可以将文件复制或使用Navicat MySQL。



MyISAM

每个MyISAM表存储在三个文件:FRM文件存储表的定义,数据文件MYD(MYDATA),索引文件是我的延伸(myindex)。

因为MyISAM是相对简单的,它比InnoDB在效率和使用MyISAM小应用程序是一个很好的选择。

MyISAM表是一个文件的形式保存,和MyISAM存储在跨平台数据传输的使用节省了很多麻烦

下面是一些细节和具体的区别:

1.innodb不支持全文索引的类型。

2.innodb不保存表的具体行数,也就是说,当执行select count(*)从表,InnoDB会扫描整个表来计算行数,但MyISAM只是读取保存的行数。请注意,当计数(*)语句包含在的条件下,两个表的操作是一样的。

3、对auto_increment类型字段,InnoDB必须包含这个领域的唯一指标,但在MyISAM,它可以建立与其他领域的联合指数。

当4.delete从表,InnoDB不重建一个表,但一行行。

5.load表从主操作InnoDB不是有效的。解决的办法是改变InnoDB表MyISAM表首先,导入数据,然后转换为InnoDB表,但它不适用于额外的InnoDB功能列表(如外键)。