关闭

InnoDB存储引擎的特点

别叨叨 1年前 ⋅ 149 阅读

MySQL5.1之后,默认存储引擎变成了InnoDB。相对于MyISAM,InnoDB存储引擎有了较大的改变,主要特点有:

  1. 支持事务操作,具有事务ACID隔离特性,默认的隔离级别是可重复读(repetable-read)、通过MVCC(并发版本控制)来实现的。能解决脏读和不可重复读的问题。InnoDB支持外键操作。
  2. InnoDB默认的锁粒度行级锁,并发性能比较好,会发生死锁的情况。
  3. 和MyISAM一样的是,InnoDB存储引擎也有frm文件存储表结构定义,但是不同的是,InnoDB的表数据和索引数据是存储在一起的,都位于B+数的叶子节点上,而MyISAM的表数据和索引数据是分开的。
  4. InnoDB有安全日志文件,这个日志文件用于恢复因数据库崩溃或其他情况导致的数据丢失问题,保证数据的一致性。
  5. InnoDB和MyISAM支持的索引类型相同,但具体实现因为文件结构的不同有很大差异。
  6. 增删改查性能方面,如果执行大量的增删改操作,推荐使用InnoDB存储引擎,它在删除操作时是对行删除,不会重建表。

全部评论: 0

    我有话说: