今天看到了一幅图,MySQL历年的Commit数目:
从中可以清晰地看出,自2006/2007年达到顶峰以后,Commit数目一路下降,如今的数字只是最高峰的五六分之一!
另外一幅图是Stack Overflow的2025年度调查:
PostgreSQL排名第一,大幅领先MySQL。
这更让我吃惊,因为我记得2022年的时候PostgreSQL还不如MySQL,没想到短短三年差距这么大了。
不过,Stack Overflow是用调查的方式,主要统计程序员在开发中使用的数据库,市面上还有很多系统在使用MySQL呢,并没有统计进去。
我又赶紧去看了一下MySQL在DB-Engines的排名:
还好,MySQL依然排名第二,但是相比一年前,分数大幅下降了(-130.63)。
而PostGreSQL从2014年开始,则是一路增长,迅猛上扬。
可以说,MySQL的存量市场和使用惯性还在,但精神感召力似乎消失了。
这到底是什么原因呢?
Amazon RDS for MySQL和MariaDB的前软件开发经理Otto认为:这是因为作为开源项目的管理者,Oracle已经不值得信任了。
他甚至说:“2026年别再使用MySQL了,它不是真正的开源软件”,他的主要理由如下:
0 1
开发工作闭门进行
公开的bug跟踪系统并不是 Oracle 主要使用的开发工具,少数为MySQL做贡献的人只能眼睁睁看到自己的Pull Request和补丁被标记为已收到,但却得不到任何反馈。
这些修改有可能会出现在下一版本的MySQL中,也可能不出现,甚至可能会被重写。
在Git的提交者栏中,也只有Oracle员工的名字,真正的作者只能在博客文章中被简单提及一下。
这样长此以往,慢慢地就没有人愿意为MySQL做贡献了。
换句话说,MySQL虽然通过GPL开源,但它本身的开发方式已经不是一个标准的开源项目了。
0 2
MySQL在技术上衰落了
MySQL 8.0.29 把 ALTER TABLE 默认切换到更激进的 in-place 执行方式,但这个实现当时并不成熟,在大量边缘场景下会失败,这直接导致数据库崩溃,数据损坏,影响了许多用户。这个问题直到一年后的 MySQL 8.0.32 才得到彻底解决。
2018年MySQL 8.0发布以后,长达6年的时间没有新的重要版本发布,2024年才发布8.1,还没有多少新功能,让很多用户感到失望。
更有基准测试表示显示,在写入密集型负载下,MySQL9.5的吞吐量比8.0又下降了15%! 这确实是挺让人崩溃的。
在安全方面,MySQL也有不少问题,仅在 2025 年, MySQL 就发布了 123 个关于安全问题的 CVE ,而 MariaDB 只有 8 个 。
0 3
Oracle在引导大家使用收费的/闭源的产品
奥托说,MySQL 的软件本身、文档、官网,在各个层面都在引导用户放弃开源版本,转向收费的/闭源的 MySQL 版本。
我特意到MySQL的官网(https://www.mysql.com/cn/)看了一下:
你别说,首页写得大大的MySQL企业版,MySQL的云数据库HeatWave,AI ,Cluster,就是找不到社区版。
我又去看了MySQL各个产品的介绍:
这些产品确实让我有点儿晕,哪个是社区版?
标准版?经典版? 这是啥? 我搜了一下,发现这两者都是收费的,其实这个页面的所有产品都是收费的。
免费的社区版并不在这个MySQL的产品列表中!它都不配有个产品介绍了吗?
你要想下载的话,需要到下载页面,拉到最下方,才能看到:
2009年,MySQL之父Monty写的一篇文章:Oracle对MySQL的承诺都是空头支票。
当时Oracle要收购Sun(MySQL也在Sun旗下),欧盟担心扼杀竞争,几乎否决交易。
后来Oracle做出了10项承诺(5年期限),这才使得欧盟放行。
Monty说:“Oracle可能会把开发重点放到企业版上,或者添加闭源的扩展,使得社区版的兴趣和活跃度下降。”
“他们可能会放弃开源,关闭MySQL的某些部分。”
现在看来,Monty的话被应验了。
从商业的角度看,5年期限早已过去,Oracle完全可以基于自身利益选择如何发展MySQL这个产品,无可指责。
只不过大家也会用脚投票,选择其他真正开源的产品例如MariaDB。
MariaDB是MySQL最直接的平替,兼容性非常好。如果是新项目,或者是重要的重构项目,也可以直接上PostGreSQL。
按照目前的发展趋势,我感觉两三年内PostgreSQL就在DB-Engines的统计中全面超越MySQL,我个人从零几年就开始用MySQL,大大小小的项目用了很多,对它很有感情,看到他从巅峰坠落,心里真是有点儿伤感。
最后顺便提一下,Monty有三个孩子,名称分别是My,Maria,Max。
这三个孩子非常幸运,因为他们的父亲把他们的名字永远地“刻”在了三个数据库产品之上:
MySQL
MaxDB
MariaDB
全文完,觉得不错的话欢迎三连。
热门跟贴