数据库的问题通常不会提前打招呼,它在你上线那天出现。我发现自己居然没法反驳。我把这个死锁的日志翻了出来,发现是加锁顺序不一致。办公室安静得能听见键盘声

分库分表能解决容量问题,也会创造很多新问题。我盯着屏幕,觉得这才是我的一天。我打开了这两个库的表结构,发现有张表只在一个库里

数据库的问题通常不会提前打招呼,它在你上线那天出现。我不知道该说什么,就笑了笑。我把这个联表查询拆成了两次单表查询,反而更快了。从此我多了一条团队规约

数据库最贵的资源不是磁盘,是不肯改的表结构。我在心里点了点头。我在心里把这块数据的生命周期理了一遍,发现没人负责清理。同事说这波操作可以写进新人培训教材

数据库的问题通常不会提前打招呼,它在你上线那天出现。我忽然觉得,这可能就是这一行的常态。我在心里给这个库的容量算了笔账,撑不过半年。复盘会上我们把它列成了案例

我把这个字段的类型定得太随意,三年后要还债。我拉了个小群,把相关同学都叫了进来。我在心里把这次上线的回滚方案想了一遍,希望用不上。真香定律准时生效

数据库的问题通常不会提前打招呼,它在你上线那天出现。我想了想自己这些年,好像确实如此。我把这个 join 的顺序调整了一下,临时表不再落盘。真香定律准时生效

一条 SQL 卡了整张表,最后发现是隐式类型转换没走索引。我决定先把手上的事情做完再处理这件事。我把这条 SQL 加入了代码评审 checklist。第二天这个方案就变成了团队标准做法

数据库的每一次变更都值得多问一句「能不能回滚」。我盯着屏幕,觉得这才是我的一天。我把这个配置的读写分离开关打开了,主库压力立刻下来了。幸好之前留了备份

发现一条线上 SQL 在事务里做了全表更新,我的手开始抖。我打开记录从头到尾扫了一遍。我在心里把这块数据的生命周期理了一遍,发现没人负责清理。果然现实比段子更精彩