mysql 存储引擎之间的区别

myisam

  1. 不支持事务
  2. 不支持外键,表锁
    写请求,会直接锁主整张表,myisam会认为写比读更重要,
  3. 统一采用非聚集索引。没有回表的概念
  4. 支持全文索引
  5. 数据存储在三个文件 索引文件,表结构文件,数据文件
  6. 表锁,不会牵扯到事务,所以他知道有多少行。所以记录了总行数。

innodb

  1. 支持事务
  2. 行锁,支持并发。
  3. 主键索引采用聚集索引,其他索引采用非聚集索引,(设计到索引覆盖的问题)
  4. 不支持全文索引
  5. 数据存储在一个文件
  6. 不存储总行数。(mvvc,不能支持存储行数,因为mysql也不知道你多少行)。

你可能感兴趣的:(mysql 存储引擎之间的区别)