# MySQL与白酒：互联网行业的服从测试

LLMS 索引： [llms.txt](/llms.txt)

---

## 一、两杯难喝的酒

你还记得第一次喝白酒的感觉吗？

那股辛辣的液体划过喉咙，像一条火线灼烧食道。你的脸扭曲，眼眶发红，胃里翻江倒海。你的身体在用最原始的方式告诉你：**这不是食物，这是毒药。**

但旁边的领导前辈笑眯眯地看着你，说：习惯就好了。

MySQL也是如此。当你第一次认真审视它，会发现这东西充满了令人费解的设计：

* 默认字符集是 `latin1` 而不是 UTF-8，而当你终于改成 `utf8`，才发现那是个假的 —— 真正的UTF-8叫 `utf8mb4`•`TIMESTAMP` 只到2038年，千年虫的幽灵从未离去。

* [事务 ACID 有着严重问题，正确性一塌糊涂](/db/bad-mysql)。

•`GROUP BY` 可以选择非聚合列——SQL标准是什么？能吃吗？•没有真正的布尔类型，`BOOLEAN` 只是 `TINYINT(1)` 的别名•DDL不支持事务，`ALTER TABLE` 是悬在头顶的达摩克利斯之剑•主从延迟是永恒的痛，优化器的智商经常让人怀疑人生

你的大脑在用最基本的逻辑告诉你：**这不是设计，这是事故。**

如果你从零开始学数据库，PostgreSQL的设计会让你觉得“理应如此”，而MySQL的设计会让你不断问“为什么要这样？”

但旁边的老员工们淡定地看着你，说：习惯就好了。

**没有为什么，习惯就好。**

这和白酒的逻辑一模一样。“习惯就好”这四个字，是所有规训的起点。

--------

## 二、规训的形成

没有人天生喜欢白酒。

有意思的是，白酒的酒桌统治地位并非“自古以来”。古人喝的是黄酒、米酒，“煮酒论英雄”煮的可不是二锅头。白酒酒桌文化真正的形成，是近几十年的事——它沿着一条清晰的路径扩散：**从特定的组织体系，到体制内，再到全社会。**

这是一种 **自上而下的制度性传播**。当一个强势的组织体系把某种行为定义为“规矩”，这个规矩就会随着人员流动和利益关系，渗透到社会的每一个角落。不是因为白酒好喝，而是因为“上面的人都这么喝”。模仿权威、服从规则，是人类的本能。

![featured.jpg](featured.jpg)

MySQL的流行走的是同一条路。

2000年代，互联网创业的“权威体系”是硅谷和那些成功的大厂。它们用LAMP栈，于是LAMP成为标配——不是因为这些技术最好，而是因为：**它免费、它简单、权威们都用它、所有人都用它。**

当BAT把MySQL定为“标准”，这个标准就随着人员流动和行业影响力，扩散到了整个中国互联网。后来的创业公司、中小企业，自然而然地跟随大厂的选择——就像民企跟随体制内的酒桌规则一样。

一代又一代程序员在“MySQL是互联网标配”的叙事中成长。他们没有机会认真比较过其他数据库，就被灌输了这个信念。质疑MySQL，就像在酒桌上说“我不喝白酒”一样，会收获异样的目光：你是不是有什么问题？

**规训从来不是自然形成的。它是被权力结构塑造，然后伪装成“传统”和“惯例”的。**

--------

## 三、服从测试

白酒的真正功能是什么？**服从测试**

当领导端起酒杯看着你，他测试的不是你的酒量。他测试的是：**你愿意为了这段关系，承受多少不适？**

喝下那杯辛辣的液体，你的身体在反抗，但你的意志压制了它。你用行动证明了：为了这个组织、这个位置、这段关系，我愿意伤害自己。

这是最原始的忠诚度测试。不需要语言，不需要承诺，一杯酒就够了。

MySQL也是同样的测试。

当一个技术团队选择数据库，表面上是在评估性能、功能、生态。实际上，在很多组织里，这是一个 **政治决定**：

•选MySQL，意味着你 **服从行业惯例**•选MySQL，意味着你 **不会挑战现状**•选MySQL，意味着你 **愿意和大家一起踩坑**，而不是独自承担“非主流”的风险

在很多公司，提议使用PostgreSQL需要勇气。你得写详细的调研报告，说服每一个利益相关者，为未来可能出现的任何问题负责。而选择MySQL？什么都不用说。“行业标准”四个字就是免死金牌。

**选择MySQL不需要理由。选择其他的，需要解释。**

这就是规训的力量：它把 **服从** 变成了默认选项，把 **思考** 变成了需要额外努力的事。

--------

## 四、亲历者的故事

我毕业去了阿里，那是 Java 和 MySQL 统治的世界。

天知道要克服多大的阻力，才能在自己负责的项目里使用PostgreSQL和Golang——要写详细的技术调研论证，要和各种利益相关方解释“为什么不用MySQL”，没有人替你运维，你要自己当DBA，要承诺出了问题自己负责。每一步都是逆流而上。

后来我被挤出那个项目。接手的同事做的第一件事，就是开开心心地换回了Java和MySQL。

不是因为遇到了什么技术问题，不是因为PostgreSQL不能胜任，只是因为——**换回MySQL，他就不用解释了**。不用向别人证明这个选择是对的，不用为“非主流”的技术栈承担隐形责任，不用在每次出问题时面对“早说了用MySQL就没这事”的目光。

换回MySQL，他就回到了安全区。

我不服。我从阿里跳槽去了探探，去了苹果。因为他们都用我认可的技术栈——PostgreSQL、Go，我不想再委屈自己了。有人选择适应系统，有人选择寻找适合自己的系统。 这是两种活法，我不评判别人，但我知道自己要什么。

--------

## 五、吐真剂

白酒还有另一个功能：酒后吐真言。

酒精麻痹前额叶皮层，降低自控力。平时藏在社交面具后面的真实想法，在酒精作用下脱口而出。所以酒桌是观察人的好地方——你想知道一个人真正的样子，灌醉他就行。

MySQL也是吐真剂，只不过它暴露的是 **技术能力和思维方式**。

和一个工程师聊数据库选型，他的反应会告诉你很多：

**“MySQL够用了”** —— 他可能从来没体验过什么叫“好用”。当你习惯了糟糕，平庸就变成了足够。

**“大家都用MySQL”** —— 他做决定的依据是从众，不是分析。这样的人在其他事情上大概也是如此。

**“PostgreSQL学习曲线太陡了”** —— 他可能花了三年时间学习MySQL的各种坑和workaround，却不愿意花三个月学习一个设计更好的系统。

**“我们团队没人会”** —— 他在告诉你，这个团队的技术投资方向出了问题。

**“换数据库风险太大”** —— 他可能是对的。但这句话的潜台词是：我们已经被MySQL绑架了。

我见过太多这种模式：有人对PostgreSQL的每一个特性都要挑刺——“这个功能MySQL也有啊”、“这个性能测试不够全面”、“这个场景用PostgreSQL不一定更好”——却对MySQL的根本性设计问题视而不见。

**他们不是在做技术评估。他们是在保护自己的认知舒适区。**

承认MySQL有问题，就意味着承认自己过去的选择可能是错的，承认自己花了多年时间精通的东西可能不是最好的。这种认知失调太痛苦了，所以他们选择防御。

这是人性。我理解。但理解不等于认同。

--------

## 六、潮水的方向

好消息是，规训正在瓦解。

**白酒那边：** 年轻人越来越不买账了。“我不喝酒”不再是社交自杀，而是被尊重的个人选择。那些坚持“不喝不给面子”的酒桌，正在被新一代人抛弃。

**MySQL这边，潮水也在转向：**

•**云原生时代**：AWS、Google、Azure都把PostgreSQL作为首推，用真金白银告诉你未来在哪里•**AI时代**：pgvector让PostgreSQL成为向量数据库的首选，而MySQL还在原地踏步•**合规时代**：PostgreSQL是纯粹的BSD许可证，MySQL是Oracle手里的GPL，企业法务更喜欢哪个不言自明•**生态繁荣**：打开GitHub看看新项目用什么数据库，PostgreSQL生态的活力肉眼可见

[DB-Engines的趋势图、StackOverflow 和 JetBrains 的开发者调研](https://mp.weixin.qq.com/s?__biz=MzU5ODAyNTM5Ng==&mid=2247490182&idx=1&sn=cf0b4bc25902467ef61494c4b782a9c8&scene=21#wechat_redirect)，都用无可辩驳的数字证明：**PostgreSQL是过去十年增长最快的数据库。** 它已经成为新一代创业公司和AI项目的标配，替代了MySQL的位置，成为了那个“默认的数据库”。

越来越多的团队开始问：**“我们为什么非要用MySQL？”**

这就像年轻人在酒桌上说“我不喝白酒”一样，是规训瓦解的开始。

--------

## 七、选择的勇气

MySQL不是一个差劲到没法用的数据库。它确实运行着无数系统，服务着无数用户。在某些场景下，它确实够了。

但 “**合适的选择” 和 “默认的选择” 是两回事**。前者是思考的结果，后者是规训的产物。

当你下一次面临技术选型，当有人说“我们用MySQL吧”，我希望你能停下来问一句：**为什么？**

不是要抬杠，不是要显得特立独行。只是：这个决定，值得被认真思考一下。

你花了多少时间学习MySQL的奇技淫巧，绕过它的设计缺陷？如果把同样的时间投入到一个设计更好的系统，你会走多远？

你踩过的那些坑——字符集问题、DDL锁表、主从延迟、优化器抽风——有多少是数据库本身该解决的问题，却变成了你的问题？

你习惯的那些“最佳实践”——把子查询改成JOIN、用中间表代替CTE、用各种外部工具做本该是数据库功能的事——有多少其实是在 **为糟糕的设计打补丁**？

PostgreSQL不是完美的，没有什么是完美的。但它代表了一种不同的可能性：**数据库可以被设计得让你感到舒适，而不是让你不断适应它的怪癖。**

选择 PostgreSQL 不是信仰问题。选择任何技术都不应该是信仰问题。

但在中国，选择它需要一点勇气——打破惯性的勇气，独立思考的勇气，对自己的决定负责的勇气。这种勇气，和在酒桌上说“我不喝白酒”的勇气，本质上是同一种东西：

**拒绝被规训，坚持做判断。**
