Mysql 中 myisam 与 innodb 的区别

存储结构

MyISAM:每个 MyISAM 在磁盘上存储成三个文件。 第一个文件的名字以表的名字开始,扩展名指
出文件类型。.frm 文件存储表定义。 数据文件的扩展名为.MYD (MYData)。 索引文件的扩展名是.MYI
(MYIndex)
InnoDB:所有的表都保存在同一个数据文件中(也可能是多个文件,或者是独立的表空间文件),
InnoDB 表的大小只受限于操作系统文件的大小,一般为 2GB。
 

存储空间

MyISAM:可被压缩,存储空间较小。支持三种不同的存储格式: 静态表(默认,但是注意数据末尾
不能有空格,会被去掉)、 动态表压缩表
InnoDB:需要更多的内存和存储,它会在主内存中建立其专用的缓冲池用于高速缓冲数据和索引。

事务支持

MyISAM:强调的是性能,每次查询具有原子性,其执行数度比 InnoDB 类型更快,但是不提供事务
支持。
InnoDB:提供事务支持事务,外部键等高级数据库功能。 具有 事务(commit)回滚(rollback)
崩溃修复能力(crash recovery capabilities)事务安全(transaction-safe (ACID compliant))型表。

猜你喜欢

转载自www.cnblogs.com/tracydzf/p/12784523.html
今日推荐