1.MyISAM
特性:
①不支持事务。
②表级锁定,并发性能大大降低。
③支持全文索引。
④压缩表。存入数据库后,数据不再发生变化。
适用场景:
①不支持事务。
②并发相对较低,表锁定。
③执行大量select语句操作的表。
④count(*)操作较快。
⑤不支持外键。
注:查询速度快的原因:a.MyISAM存储的直接是文件的offset。b.不用维护mvcc。
2.InnoDB
特征:
①良好的事务支持:默认隔离级别 可重复读 比例用间隙锁与mvcc解决幻读的问题。
②行级锁定:锁力度小,支持并发性好
③基于聚簇索引建立,对于主键查询具有极高的性能,其二级索引也包含主键列,进行二次查询。
④热备份和崩溃恢复。
3.Memory
①存储在内存中,无需磁盘io,索引为hash。
②数据库重启后表数据不保存,变成空表。
使用场景:
①复杂查询时生成的临时表。
②映射表。如城市id和城市名称的映射。