InnoDB 默认的存储引擎
InnoDB是一个事务型的存储引擎,有行级锁定和外键约束。
适用场景
- 经常更新的表,适合处理高并发的更新请求。
- 支持事务
- 可以从灾难中恢复(通过bin-log日志)
- 外键约束
- 支持自动增加列属性auto_increment
MyISAM支持FULL TEXT类型的索引,并且保存了表的行数,不支持事务、行级锁和外键。
适用场景
- 查询速度快
- select count(*) from table时只需要直接读取已经保存好的值不需要进行全表扫描。
索引结构
MyISAM采用的是非聚集索引,用B+tree来存储数据,索引的指针指向的是键值的地址,地址存储的是数据。
InnoDB也是B+树,它的索引文件本身就是数据文件,即B+Tree的数据域存储的就是实际的数据,这种索引就是聚集索引