MySQL存储引擎

喜你入骨 提交于 2020-03-03 16:51:16

在这里插入图片描述

MySQL5.5后,默认存储引擎是InnoDB,5.5之前默认是MyISAM。

InnoDB(事务性数据库引擎)和MyISAM的区别补充:

  1. InnoDB是聚集索引,数据结构是B+树,叶子节点存K-V,V存的是数据页。MyISAM是非聚集索引,V上存的是主键值,查到后还需要再聚集索引上再查一次。
  2. InnoDB是具有事务(commit)、回滚(rollback)和崩溃修复能力(crash recovery capabilities)的事务安全(transaction-safe (ACID compliant))型表。适合存在大量insert、update场景。
  3. MyISAM强调的是性能,不支持事务,最大缺陷就是崩溃后无法安全恢复,更适合读密集的小型应用。
  4. 只有InnoDB支持MVCC(多版本控制)。应对高并发事务, MVCC比单纯的加锁更高效,所以InnoDB更适合高并发场景。

常用命令

//查所有引擎
mysql> show engines;
//查当前引擎
mysql> show variables like '%storage_engine%';
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!