文章
共 61 篇 · 在这座岛上写下的思考
🏝️
数据库
EXPLAIN 与慢查询优化实战
一条 SQL 慢,通常不是"数据太多",而是优化器没找到好的执行路径。这篇讲清 EXPLAIN 里 type、key、rows、Extra 四个关键字段怎么读,以及从 filesort、temporary 到深分页的五类实战优化手段。
2026-03-1820 分钟MySQL
🏝️
数据库
InnoDB 与 MyISAM:存储引擎怎么选
MyISAM 查询常常更快,为什么现在几乎没人用它?因为存储引擎的选择不是比速度,而是比"出问题时能不能救回来"。这篇从事务、锁粒度、索引结构、崩溃恢复四个角度看两者的分野。
2026-03-1213 分钟MySQL
🏝️
数据库
RBAC 权限模型:表结构设计与落地方案
RBAC 的核心思想是用角色做中转,不给用户直接分配权限。这篇文章拆解标准五张表的职责划分、多对多中间表的必要性,以及数据权限这类扩展场景怎么设计。
2026-03-0713 分钟RBAC
🏝️
数据库
乐观锁的两种流派:version 字段 vs 条件更新
两个 SQL 都叫乐观锁,失败语义却完全相反:version 失败是"冲突",条件更新失败是"资源不足"。混用会让重试逻辑变成压垮数据库的重试风暴。这篇讲清两种流派的取舍与边界。
2026-03-0511 分钟MySQL
🏝️
数据库
建表规范:字段类型、范式与冗余
建表是后端最容易埋雷的一步。金额用 float、状态用 varchar、多对多拿逗号拼 ID,上线时都没事,出问题时都是大问题。这篇给出六步建表法,并说明范式什么时候该让位于冗余。
2026-02-2114 分钟MySQL
🏝️
数据库
索引设计:从最左前缀到索引失效
索引不是建得越多越快,建错了反而拖慢写入。这篇从聚簇索引与回表讲起,梳理联合索引的列顺序该怎么排、最左前缀法则为什么成立,以及七类常见的索引失效场景。
2026-02-1412 分钟MySQL
🏝️
数据库
B+ 树与 B 树的区别,以及为什么数据库选 B+ 树
单看等值查询,B+ 树并不比 B 树快,有时还要多走一层。数据库选它,是因为磁盘 IO 的粒度和范围查询的需求。这篇从页和 IO 次数讲起,把 B+ 树的扇出优势、叶子链表和回表代价一次说清。
2026-02-079 分钟MySQL