MyISAM:无事务、锁表、读写互相阻塞、索引不缓存数据、数据与索引分离,都是【非聚集索引】 InnoDB:有事务,默认用主键or唯一非空列or隐藏列建立【聚集索引】(只能有一个),索引和数据在同一个B(平衡)树,影响增改性能,速度快,特性如下:
稠密索引、稀疏索引
下面两个是很常见的知识点,一定要反复复习记住
ACID
UCRS
隔离级别 | 脏读 | 不可重读 | 幻读 | 英文名 | 默认 |
---|---|---|---|---|---|
RU 读未提交 | √ | √ | √ | Read uncommitted | |
RC 读已提交 | × | √ | √ | Read committed | 其他 |
RR 可重读 | × | × | √ | Repeatable read | MySQL |
S 串行化 | × | × | × | Serializable |
不可重读:更新,一个事务两次读取内容不一样 幻读:插入,一个事务两次读取条数不一样,MySQL 用 MVCC 解决 多版本并发控制 MVCC Multiversion Concurrency Control