天天看点

InnoDB与Myisam的区别???数据库存储引擎????

1、MyISAM不支持事务,而Innodb支持事务。

2、MyISAM 最小的锁粒度是表级锁,InnoDB 最小的锁粒度是行级锁。

3、外键支持:mysiam表不支持外键,而InnoDB支持。

4、count运算:myisam用一个变量保存了整个表的行数,速度很快,可以直接调取变量;而Innodb没有。执行 select count(*) from table 时需要全表扫描。

5、是否⽀持MVCC :仅 InnoDB ⽀持。

【【应对⾼并发事务, MVCC⽐单纯的加锁更⾼效;

MVCC只在READ COMMITTED 和 REPEATABLE READ 两个隔离级别下⼯作;

MVCC可以使⽤乐观(optimistic)锁 和 悲观(pessimistic)锁来实现;各数据库中MVCC实现并不统⼀。】】

6、InnoDB 使用的是聚集索引,MyISAM使用非聚集索引。

MyISAM适合:(1)做很多count 的计算;(2)读密集;(3)没有事务。

InnoDB适合:(1)要求事务;(2)写密集(3)高并发