搜索结果: "MySQL" (26)
咖啡养成
连载中 8/22
隔离级别与 MVCC:快照读到底读的是什么
报表里读到不存在的行?对账脚本反复执行结果不一致?从脏读、不可重复读、幻读三个问题讲起,拆解 ReadView 与版本链,讲清 RR 为什么是默认级别。
咖啡养成
连载中 7/22
事务与崩溃恢复:ACID 背后的 redo 和 undo
扣款成功订单却没生成?ACID 不是背出来的口号:原子性靠 undo log、持久性靠 redo log,搞懂 WAL、循环写与崩溃恢复的完整流程。
咖啡养成
连载中 6/22
优化器的选择:统计信息、成本估算与 force index
同样的 SQL 有时走索引有时全表扫?看懂优化器的成本账本:统计信息怎么采样、IO 与 CPU 成本怎么算、什么时候该 ANALYZE TABLE,什么时候才动 force index。
咖啡养成
连载中 5/22
索引失效:这些写法让索引悄悄下岗
索引明明建了,查询还是全表扫?盘点六大失效写法:函数运算、隐式类型转换、左模糊、or 混搭、not in 与隐式字符集,每一条都附补救写法。
咖啡养成
连载中 4/22
联合索引:最左前缀、覆盖索引与回表
联合索引的三列顺序为什么是 user_id、status、create_time?用字典查词类比讲透最左前缀,再学会用覆盖索引把回表次数打到零。
咖啡养成
连载中 3/22
索引原理:B+ 树为什么长这样
381 万行降到 42 行,凭什么?从 16KB 的页讲起,算出三层 B+ 树为什么能装两千万行,再回答为什么不是 B 树、红黑树和哈希。
咖啡养成
连载中 2/22
EXPLAIN 精读:type 等级、rows 与 Extra 的暗语
EXPLAIN 看了等于白看?把 type 七档、key_len 算法、id 执行顺序和 Extra 全部高频取值逐一精读,学会用 key_len 判断联合索引真正用了几列。
咖啡养成
连载中 1/22
一条 SQL 的 8 秒之旅:慢查询日志与 EXPLAIN 入门
订单列表页转了 8 秒才出数据?从慢查询日志定位真凶,用 EXPLAIN 看清执行计划,第一刀给 WHERE 和 ORDER BY 建上联合索引。