MySQL高级篇笔记(一)MySQL存储引擎

一、存储引擎介绍

1、MyISAM

MyISAM提供了大量的特性,包括全文索引、压缩、空间函数(GIS)等,但MyISAM 不支持事务和行级锁(MyISAM改表时会将整个表全锁住) ,有一个毫无疑问的缺陷就是崩溃后无法安全恢复
MyISAM管理非事务表,所以关注点在于性能上,可以提供高速存储和检索,支持全文搜索

那么为什么MyISAM会比InnoDB快呢? [待做]

2、InnoDB

InnoDB是MySQL的默认事务型引擎 ,它被设计用来处理大量的短期(short-lived)事务。除非有非常特别的原因需要使用其他的存储引擎,否则应该优先考虑InnoDB引擎。
InnoDB支持事务,支持主键和外键,支持提交、回滚和紧急恢复功能来保护数据,它还支持行锁

阿里巴巴、淘宝用什么引擎呢?

MySQL高级篇笔记(一)MySQL存储引擎

3、两种存储引擎的对比

MySQL高级篇笔记(一)MySQL存储引擎
Innodb的索引使用 B+Tree,MyISAM索引使用B-Tree
Innodb主键为聚簇索引,基于聚簇索引的增删改查效率非常高