《MySQL 技术内幕(第5版)》逐章精华笔记(Markdown版)

第1章:MySQL 架构总览

精华总结

  • MySQL 架构分为三层:连接层、SQL 层、存储引擎层。

  • 存储引擎是插件式的,InnoDB 是默认引擎。

大白话

MySQL 就像餐厅:前厅服务(连接处理),厨师做菜(SQL执行),后厨食材(存储引擎)。你换厨师不影响大厅。


第2章:存储引擎架构

精华总结

  • InnoDB 使用页(默认16KB)来管理数据。

  • 主键默认建聚簇索引,数据就按主键存。

  • 辅助索引只存主键值。

大白话

想象数据是一本字典,主键就是页码,查其他字段要先看目录再翻页(回表)。


第3章:表与索引结构

精华总结

  • 索引结构是 B+树。

  • 支持联合索引,最左前缀法则重要。

  • 覆盖索引能避免回表。

大白话

索引是“树形导航目录”,找数据像查高速路口,最左边的字母必须先写上。


第4章:SQL 执行流程

精华总结

  • SQL 执行步骤:解析 → 预处理 → 优化 → 执行

  • 优化器会选择最便宜的执行路径(基于统计信息)

大白话

执行 SQL 就像点菜:先识别你说的是什么(解析)、再找原材料(预处理)、选最省事的做法(优化)、最后上菜(执行)


第5章:锁机制

精华总结

  • 支持行锁、表锁、意向锁。

  • InnoDB 默认是行锁 + MVCC。

  • 事务之间的冲突靠锁解决。

大白话

锁就像厕所的门牌——谁在用、用的是大号还是小号,一眼就能看出来。


第6章:事务与日志

精华总结

  • 事务四大特性 ACID。

  • undo log 用于回滚,redo log 保证写入持久。

  • 二阶段提交:先 redo prepare,再写 binlog。

大白话

数据写入像买房:先签意向书(prepare redo),再网签(binlog),两者都写完才算成交。


第7章:查询优化器

精华总结

  • 优化器选执行计划,基于“代价模型”。

  • 影响优化器的有索引、统计信息、写法。

大白话

优化器就像你妈做饭,会选最省火、最快熟、又不难吃的做法。


第8章:性能优化实战

精华总结

  • 优化手段:加索引、减少回表、分页优化(如 where id > 1000)

  • 常用工具:EXPLAIN、慢查询日志、SHOW PROFILE

大白话

优化 SQL 就像减肥——吃得少(少字段)、吃得快(加索引)、动得巧(写法对)


第9章:复制原理

精华总结

  • 主从复制基于 binlog。

  • 支持 GTID(全局事务 ID)追踪。

  • 延迟复制、半同步复制增强稳定性。


第10章:分布式与集群架构

精华总结

  • MySQL 自身非分布式,用中间件实现 Sharding。

  • MySQL Group Replication、TiDB 是常见方案。


知识图谱草图

1. InnoDB 引擎架构

  • Buffer Pool

  • Redo Log / Undo Log

  • Double Write Buffer

  • 自适应哈希索引

2. 事务执行流程

  • Begin

  • 执行 SQL

  • 写 undo log

  • 写 redo prepare

  • 写 binlog

  • redo commit

3. 锁机制图谱

  • 表锁 / 行锁

  • 共享锁 / 排它锁

  • 意向锁(IS/IX)

  • 死锁检测方式

  • Gap Lock / Next-Key Lock

你可能感兴趣的:(MySQL,mysql,笔记,数据库)