HTML · 2021年10月6日 0

innodb和myisam的区别

表的差距

事务:innodb支持事务,myisam不支持事务
索引:innodb是聚簇索引,myisam是非聚簇索引
锁级别:innodb支持表,行锁(默认),myisam支持表锁(ps:innodb行锁是在索引上实现的,如果没有命中索引那么只能用表锁)
外键:innodb支持,myisam不支持

为什么MyISAM会比Innodb的查询速度快

数据块:innodb要缓存数据块,myisam只缓存索引块
innodb要维护MVCC的一致性,myisam系统崩溃后恢复困难
MVCC:是多版本并发控制,是一种并发控制的方法,可以看作是行级锁的一个升级,可以有效减少加锁操作,提供性能。