问题

MYSQL MYSQL MYSQL

MySQL中myisam与innodb的区别,至少5点

题库小秘书

发表于 2019-03-06 09:59:14

1.InnoDB支持事务,而MyISAM不支持事务 (重要区别)

2.InnoDB支持行级锁,而MyISAM支持表级锁 (重要区别)

3.InnoDB支持MVCC, 而MyISAM不支持 

4.InnoDB支持外键,而MyISAM不支持 (重要区别)

5.InnoDB不支持全文索引,而MyISAM支持。

7.InnoDB表支持多种行格式, myisam 不支持 

8.InnoDB是索引组织表, myisam 是堆表

10.Innodb不保存表的具体行数,扫描表来计算有多少行, MyISAM会保存表的总行数。

11.两种方式的数据存储结构:

  在Myisam下,数据库的每个数据表都有*.frm、*.YMI和*.YMD三个文件,其中*.frm存储数据表的表结构,*.MYI存储数据表的索引,*.MYD存数数据表的记录数据;

  在Innodb下,每个数据库下的每个数据表只有一个*.frm存储数据表的表结构,而所有数据库的所有表数据索引、数据记录都全部存储在ibdata1文件中,而ib_logfile0和ib_logfile1是日志文件。