InnoDB和MyISAM存储引擎的区别

Posted AllIhave

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了InnoDB和MyISAM存储引擎的区别相关的知识,希望对你有一定的参考价值。

InnoDB存储引擎

InnoDB是一个事务型的存储引擎,设计目标是处理大数量数据时提供高性能的服务,它在运行时会在内存中建立缓冲池,用于缓冲数据和索引。

InnoDB优点

1.支持事务处理、ACID事务特性;

2.实现了SQL标准的四种隔离级别;

3.支持行级锁和外键约束;

4.可以利用事务日志进行数据恢复。

InnoDB缺点

1.不支持FULLTEXT类型的索引,因为它没有保存表的行数,当使用COUNT统计时会扫描全表。

InnoDB适用场景

1.需要事务的操作;

2.更新数据需要使用行级锁;

3.大数据量读写;

4.大型互联网应用。

MyISAM存储引擎

MyISAM是mysql默认的引擎,它的设计目标是快速读取。

MyISAM优点

1.高性能读取;

2.因为它保存了表的行数,当使用COUNT统计时不会扫描全表;

MyISAM缺点

1.不支持数据库事务;

2.不支持行级锁和外键;

3.INSERT和UPDATE操作需要锁定整个表;

4.不支持故障恢复;

MyISAM适用场景

1.不需要事务的操作;

2.插入、更新少,读取频繁;

3.频繁的统计计算。

以上是关于InnoDB和MyISAM存储引擎的区别的主要内容,如果未能解决你的问题,请参考以下文章

存储引擎:MyISAM和InnoDB区别

Mysql存储引擎MyIsAM和InnoDB区别

INNODB与MyISAM两种表存储引擎区别

mysql存储方式MyISAM 和 InnoDB的区别

MySQL存储引擎MyISAM与InnoDB区别

MySQL存储引擎MyISAM与InnoDB的区别