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

互联网的 MySQL 就像中国的白酒:明明很难喝,却在文化规训下成了琼浆玉液。本质都是服从测试——你愿意为了合群而接受不适吗?

一、两杯难喝的酒

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

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

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

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

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

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

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

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

没有为什么,习惯就好。

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


二、规训的形成

没有人天生喜欢白酒。

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

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

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 的开发者调研,都用无可辩驳的数字证明:PostgreSQL是过去十年增长最快的数据库。 它已经成为新一代创业公司和AI项目的标配,替代了MySQL的位置,成为了那个“默认的数据库”。

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

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


七、选择的勇气

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

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

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

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

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

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

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

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

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

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

拒绝被规训,坚持做判断。