45讲摘要
第一讲:基础架构:一条SQL查询语句是如何执行的?
一条SQL的执行流程,MySQL的整体架构
第二讲:日志系统:一条SQL更新语句是如何执行的?
redo log 和 binlog
第三讲:事务隔离:为什么你改了我还看不见?
事务隔离级别,事务的生命周期,undo log
第四讲:深入浅出索引(上)
B+树,索引的数据结构
第五讲:深入浅出索引(下)
各种类型的索引:覆盖索引、前缀索引、索引下推等等
第六讲:全局锁和表锁 :给表加个字段怎么有这么多阻碍?
全局锁和表级锁
第七讲:行锁功过:怎么减少行锁对性能的影响?
行锁
第八讲:事务到底是隔离的还是不隔离的?
深入隔离级别,一致性读、当前读、行锁的关系
第九讲:普通索引和唯一索引,应该怎么选择?
从普通索引和唯一索引,redo log,change buffer,唯一索引的坑点
第十讲:MySQL为什么有时候会选错索引?
优化器怎么选择索引的以及为什么选错索引
第十一讲:怎么给字符串字段加索引?
索引的实际应用
第十二讲:为什么我的MySQL会“抖”一下?
WAL,redo log,checkpoint
第十三讲:为什么表数据删掉一半,表文件大小不变?
数据库表的空间回收方法,如何收缩表空间
第十四讲:count(*)这么慢,我该怎么办?
获得表行数的方法和差别
第十五讲:答疑文章(一):日志和索引相关问题
redo log buffer,redo log file,redo log,binlog,索引
第十六讲:“order by”是怎么工作的?
order by
第十七讲:如何正确地显示随机消息?
排序和临时表
第十八讲:为什么这些SQL语句逻辑相同,性能却差异巨大?
索引失效的情况
第十九讲:为什么我只查一行的语句,也执行这么慢?
表锁、行锁和一致性读