MySQL 存储引擎
MySQL 有那些存储引擎,有哪些区别?
参考:MySQL中常用存储引擎有哪些?它们相互之间有什么区别?
InnoDB 与 MyiSAM 的区别?
- 事务
- 外键
- 聚集索引,非聚集索引
- InnoDB 不保存表的具体行数,执行 select count(*) from table 时需要全表扫描。而MyISAM 用一个变量保存了整个表的行数,执行上述语句时只需要读出该变量即可,速度很快;
- InnoDB 最小的锁粒度是行锁,MyISAM 最小的锁粒度是表锁。一个更新语句会锁住整张表,导致其他查询和更新都会被阻塞,因此并发访问受限。这也是 MySQL 将默认存储引擎从 MyISAM 变成 InnoDB 的重要原因之一;
MySQL 调优
整理:MySQL 调优
索引
整理:MySQL 索引
事务、锁
整理:MySQL 事务
乐观锁和悲观锁在 MySQL 中是怎么实现的?
参考:图解悲观锁和乐观锁
主从
整理:MySQL 主从