MySQL 原理学习
文章平均质量分 89
记录自己学习 MySQL 的过程
Askillerguy
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
InnoDB 页内是怎么“排队”和“加速查找”的:记录链表、页目录与那 5 个字节的 Record Header
本文深入解析了InnoDB页内记录的组织结构及其优化机制。主要内容包括:1)页内记录通过单向链表(next_record)维护逻辑顺序,配合页目录(Page Directory)实现快速定位;2)特殊记录infimum和supremum作为边界;3)heap_no管理物理分配,与逻辑顺序无关;4)页目录采用分组机制(n_owned)实现"二分+小步走"的混合查找;5)Record Header各字段协同服务于查找、插入、删除等操作。这种设计兼顾了顺序扫描和随机点查的效率需求,同时考虑了M原创 2025-12-15 21:49:18 · 749 阅读 · 0 评论 -
从一条记录说起:InnoDB 行记录长什么样?以及为什么会有 COMPACT / DYNAMIC 两种行格式
本文深入解析了InnoDB的行记录存储结构,重点对比了COMPACT和DYNAMIC两种行格式。主要内容包括:1)InnoDB数据存储的基本架构,记录以B+Tree组织在16KB页中;2)COMPACT行格式的四段结构:变长字段长度列表、NULL位图、记录头和真实数据;3)大字段处理机制,当列值过长时会使用溢出页存储,行内保留768B前缀(COMPACT)或仅保留引用(DYNAMIC);4)两种行格式的历史演进,DYNAMIC通过减少行内存储提高页密度。文章还提供了查看和修改行格式的SQL操作指南,帮助开发原创 2025-12-15 21:26:47 · 738 阅读 · 0 评论
分享