各位新朋友~记得先点蓝字关注我哦~
前言
网络上,MySQL与PG的互怼,向来不绝于耳。近些年,随着PG使用的也越来越广泛,PG和MySQL又战火重燃。
有PG粉批评MySQL代码丑陋、性能缓慢。
而MySQL粉呢,则不慌不忙的以“占用率”回应。的确,MySQL使用之广,连Oracle恐怕都望尘莫及。
早些年,国内一位能与Monty Widenius(MySQL创始者)谈笑风声的MySQL大牛曾说过,PG是为“教学”而生的数据库,没有商业基因,怎能与MySQL相提并论?
简而言之,PG是为了教学生如何写一个数据库而存在,只为教学,不为商业。
生态建设
在https://db-engines.com/en/ranking网站中,有目前为止,最权威、被广泛认可的数据库流行度排名,到发文时(2021-06-01),排行如下:

Oracle得分1269.94,位居榜首。Oracle霸榜已经N年了,老牌数据库王者,实力不可小觑。
MySQL得分1236,虽居第二位。但众所周知,排在第11位的MariaDB,实际上可以算作MySQL的分枝,而且两者分家也才没几年,MySQL粉们都把MariaDB算作MySQL。
MariaDB得分96.69,和MySQL得分相加,二者总分1333.07,已经超过了Oracle,位居榜首。
PG长期位居第四,开源数据库第二,不过得分559.25分,还没有跨入千分大关。
但是,以生态而论,国人几乎不参与国外这些开源数据库的生态,PG官网上的Committer(PG代码贡献者)几乎没有华人。MySQL呢,因为官网上很难查到Commiter姓名,因此国内的MySQL Committer就比较众多了。
也就是说,国人其实没怎么参与进开源数据库的生态。
而一个数据库将来的发展,生态建设是关键。
近日,阿里官宣,开源PolarDB for PostgreSQL。
这次开源的,是基于Paxos复制的高可用三节点集群版,开源的范围包括数据库产品内核、相关插件、工具脚本、测试用例以及设计文档等。
很多开源,不为生态建设,只为开源一个普通版做秀。发布会开完、秀做完,也就那样了。如果你要使用,还有一个商业版,闭源且收费。
这样的做秀式开源,挂着开源的羊头,买自己的狗肉。名为开源,实为买“狗肉”。不可能推动生态的发展。但据目前公布的资料看,PolarDB for PostgreSQL的开源并不属于此类。阿里并没有保留一个闭源且收费的PolarDB for PostgreSQL版,是完全的、极具诚意的开源。
有头部公司诚意满满开源的推动,相信PG的生态会越做越好。反观MySQL,被oracle收入囊中后,以拉里.埃里森一贯强势的性格,连MySQL创始人Monty都不得不离开另立炉灶,未来的生态发展让人担忧啊。

Oracle创始人 拉里.埃里森
但无论MySQL还是PG,从技术上来说,都是十分优秀的数据库产品,都足以担当大任。那么到底PG、MySQL孰强孰弱?让我们先放下纷争,回到历史中,看看两大门派PG、MySQL的江湖往事,相信各位看官自己就能有一个判断,谁才是真正的武林盟主。
关于Monty Widenius
首先,我们请出Monty Widenius,数据库界的风清扬。
Monty Widenius,我没在网上查到他有任何专利,他也没有在国际顶会上发过任何论文。他更不是IEEE会员,连美国科学学会会员都不是,也没写过什么。总之,江湖上很少他的传说。
可能只有当任我行这样的大佬聊起天时,才会提到,我佩服的三个半人,Monty Widenius是其中一人。
他是一个程序员。他一定用过很多的语言,写过很多的程序,但只有一个程序被人记住了,那个程序叫MySQL。
Monty 1962年出生于芬兰的赫尔辛基,1978年,其18岁时,开始接触一种原始的计算机ABC80。
上世纪七零年代,电子游戏还没有形成产业,计算机主要用于商业计算。因此ABC 90上也没什么游戏,这难不倒Monty,他自己用原始的编程语言开发了好些小游戏。
Monty经常攒攒钱为ABC 90升级硬件,升级个内存啥的。一来二去,和一家电脑商店的老板,Allan,熟络起来。Allan同时还开着一家TcX的小公司,承接一些小的软、硬件实施项目。
在1979年,Monty 19岁时。Allan给他介绍了一个生意,为某客户开发了一个报表程序,Unireg。就是下图的样子:

用户可以在文本的界面中创建表格,并更新表格中的数据。有点像简单版、文本版的Excel。
Unireg虽然简单,但完全可以算是MySQL的起点。之后的几十年中,Monty一直在不断加强着Unireg。
最初的Unireg由BASIC编写。这种语言由淫荡的比尔.盖茨开发,虽然出身不凡,但并不适合开发大型软件产品。于是在1983年,Monty终于无法再忍受BASIC,而选用C语言重写了Unireg。
不断的升级迭代,意味着Unireg最初的商业化之路还是可以的,一定能为Monty源源不断的带来收入。
1985年,Monty和TcX公司的老板Allan合伙创业,以Unireg为基础,开发了更像现代数据库的产品:TCX DataKonsult AB。
之后TCX DataKonsult AB一直在默默发展(闷声发大财)。
上世纪八十年代末到九十年代初,数据库领域烽烟四起,Ashton-Tate的dBase系列和Oracle无疑是最大的两家数据库企业。Oracle的拉里.埃里森,誓要击垮Ashton-Tate。
“不仅我要成功,其他人还要都失败”,正如拉里的豪言壮语,Ashton-Tate虽然粉丝无数,但还是残死在Oracle铁蹄之下。
Ashton-Tate VS Oracle的大战,摘挡了拉里的双眼,一直默默发育的TCX DataKonsult AB,没有进入拉里的眼帘,得以在芬兰做一个安静的美男。
MySQL的诞生
到1994年,Web开始兴起。有些客户有感于TCX DataKonsult AB不支持SQL、使用不便。建议Monty为TCX DataKonsult AB增加SQL功能,以便能支持快速开发Web程序的需求。Monty觉得这或许是一个好主意,于是历经一年多时间,Monty为TCX DataKonsult AB增加了SQL的功能。但这个时候已经不叫TCX DataKonsult AB。
传说Monty用大女儿的名字为新的软件命名,Monty的大女儿叫My,这个新的软件就是MySQL 1.0。
诞生于1995年。

这就是My,挺漂亮的。看了My之后,是不是想深入学习MySQL的冲动更强了。
之后,就是MySQL的飞速发展期了。到1999年时,有公司希望以5000万美元的价格,将MySQL买下来。
当然,被Monty拒绝了。
拒绝的原因,很多地方说是Monty有更大的愿景:改变世界。
但我觉得,到1999年时,MySQL一定能为Monty带来不少的收入。他对钱的需求,已经没有那么急迫了。
改变世界和将MySQL买掉挣一大笔钱其实并不冲突。在2008年,Monty还是以10亿美元的价格,将MySQL卖了,卖给了Sun。Monty也凭借这笔收入成为这一年芬兰的10大富豪之一。
一个懵懂少年,从Unireg,到TCX DataKonsult AB,再到MySQL,再到北欧天堂国中的十大富豪之一。
从1979年,到2008年,差不多正好30年。这是芬兰版“三十年前尘土面,如今始得碧纱笼”的故事。
因为MySQL太过耀眼,国内文章提到Monty时,统统都是“天才少年,少而有慧”。似乎Monty生下来就天命所归,为MySQL而生。
但我翻遍网络,除了“十八岁前后开发了几个吃豆子级别的游戏”之外,还真没看出来少年时的Monty展现出那些了不得的天赋。
我更愿意相信,MySQL的成功,并不是天才少年命中注定的成功,而是一个普通人、十几年来不断坚持,恰好顺应了时代,终于造就了今日的MySQL。
(注:坚持不一定成功,顺应时代很重要)
好了,本期《PG&MySQL江湖恩怨录》就到这里,还有更精彩的内容在等着你,还没有关注的,记得关注我们的公众号“新运维新数据”,不错过精彩分享。
美创运维中心数据库服务团队拥有Oracle ACE 1人、OCM 10余人、数十名Oracle OCP、MySQL OCP、红帽RHCA、中间件weblogic、tuxedo认证、达梦工程师 ,著有《Oracle DBA实战攻略》,《Oracle数据库性能优化方法和最佳实践》,《Oracle内核技术揭秘》等多本数据运维优化书籍。目前运维各类数据库合计2000余套,精通Oracle、MySQL、SQLServer、DB2、PostgreSQL、达梦等主流商业和开源数据库。并成为首批国内达梦战略合作伙伴之一,拥有海量经验和完善的人员培养体系。并同时提供超融合,私有云整体解决方案。







