看起来好像那些无休止的诉讼案情摘要、听证会、唇枪舌剑等等所有事情都不曾发生过一样。现在,全球各地的数据库管理员、IT经理和小型网站运营商继续像往常一样工作,MySQL继续在服务器上运行并回应着数据库查询。但是现在,是Oracle拥有了MySQL的版权。所以,这个问题依然存在:MySQL这个流行的开源软件数据库的未来会怎样?众多依赖于它的机构的未来会怎样?
这是一个棘手的问题。这个问题的答案主要取决于MySQL在你的企业中发挥的作用、你使用的许可证类型、你想花的钱的总数、你要采购什么以及你在未来要与谁合作等等。使这个事情更加复杂的是,MySQL是世界上最著名的开源软件项目和业务之一,因此,任何有关MySQL的讨论都会变成一场有关开源软件许可证的争论,例如GPL许可证。
MySQL的今天和明天
对于MySQL爱好者的好消息是:它不会很快就无人管理而枯萎和死亡。Oracle已经公开保证它将比Sun投入更多的资金开发这个数据库,至少在未来三年之内是如此。MySQL的社区版将继续得到改善。该版本是根据GPL许可证发布的,所有的源代码都是免费的。
这些保证表明,普通的MySQL用户不需要考虑在未来几年里是否放弃MySQL的问题。如果你对于所使用的数据库的版本满意,只要你有一个编译器,就能够一直保持它运行。
有一些充分的历史证据表明,Oracle将让用户更轻松地继续使用MySQL,而不再需要编译器。一位很熟悉Oracle在收购开源软件数据库公司 Sleepycat之后如何使其成熟的开发人员说,这次收购对于所有人都是非常不错的。现在,Sleepycat的工程师人数比以前多多了,而且并未改变过该数据库的许可证。
一位不愿透露姓名的Oracle开发人员说,“4年之后,我们大家都还在这里。人人仍在工作并且很快乐。Oracle是很不错的工程师之家。”
当然,这种保证还不足以安抚每一个人紧张的神经。MySQL网站显著地有别于Sleepycat.com(后者并重定向至Oracle网站)的事实也许不仅仅是一个疏忽。Oracle管理层很清楚人们对于MySQL的未来之路充满了混乱之感,所以把mysql.com网站重定向到 oracle.com网站,只会让那些在Sun被收购之后仍然感到担心的人们更加不安。
你的许可证还是我的许可证?
机构和开发人员表示简单地担心MySQL作为一种产品的未来,而是担心Oracle拥有这个数据库及其许可证的方式将影响到许可证授权。
MySQL原来的创始人之一Monty Widenius是公开反对Sun与Oracle合并的人士之一。他在2009年离开了Sun并且在Monty Program AB公司之下开始创建一种新版本的MySQL源代码MariaDB。
Widenius游说欧盟委员会阻止这个合并。他争辩说,允许Oracle控制MySQL版权对于欧洲和整个社会都是坏事。他的理由是像他那样产品建在开源软件数据库基础上的公司只有能够向不想受GPL许可证束缚的用户提供商业性的许可证才能持续生存下去。
因此,他争辩说,如果Oracle成为单独的版权拥有者,就会不允许任何竞争者销售商业性许可证。(原来的MySQL公司还坚持保留全面的版权,要求所有的作者签署协议把版权授予该公司。这个权利意味着他们并且只有他们能够出售这个机会,不理会GPL协议)迫使用户采用GPL许可证的麻烦是这是有争议的混乱的许可证。这个事情的细节会变得更加复杂。例如,一些人建议说这个许可证适用于通常与每个人的软件关系更密切的驱动程序和定义这个连接的协议。其他人争辩说,这个想法是不自量的。
在过去,我知道MySQL销售人员有效地利用潜在的客户对于GPL许可证的混淆,说法他们相信选择一个商业性许可证会更简单,消除了未来可能出现的任何代价昂贵的法律纠纷。当然,购买一个商业性许可证有助于帮助满足饥饿的开发商。这种做法已经证明是一个有效的和盈利的恐吓策略。
一个更善良、更温和GPL许可证
有理由相信,对于GPL许可证的担心正在消失。谷歌开源软件计划经理Chris DiBona说,谷歌运行没有许可证的MySQL一点也不担心。有许多人在阅读GPL许可证的时候加入了他们希望这个许可证要说的话。我们理解这个GPL 许可证。我们将按照它制定的方式使用它。
DiBona指出,GPL许可证要求开发人员在发布软件的时候包含源代码。谷歌发布的大多数东西是结果,而不是软件,因此,谷歌不需要发布它度软件做的任何修改,如果它做出修改的话。许多公司不做任何修改地使用MySQL和其它GPL项目。
哥伦比亚大学法律教授Eben Moglen经常帮助Richard Stallman起草各种版本的GPL许可证。他说,销售人员很快就会认识到GPL许可证是吓唬人的。“你不想因此遭受魔咒就应该向我们付费”这种做法不是一种可持续的商业模式。
过去,Moglen为Oracle和MySQL这两家公司工作,帮助他们理解和定义GPL在商业方面的角色。当欧盟委员会争论这个合并交易的时候,Moglen得出的结论是这两家公司的合并不会损害这个开源软件代码的开放性。这是他考虑的最重要的因素和GPL的真正要点。
Stallman采取不同的方法并且选择把重点放在经济和竞争方面,与其他开源软件支持者一起支持Widenius的观点:发布商业许可证的能力是非常重要的。这个组织在给欧盟委员会的信中说了这个理由:由于只有原来版权持有者能够销售商业许可证,这个代码的任何新的分支都不能采取并行授权的方法,不能轻松地生成源代码以支持MySQL平台的持续的开发。
无论好坏,欧盟委员会都没有受到这些理由的影响并且同意让Oracle控制Sun和MySQL。这个事情对于企业使用和授权MySQL的方式有什么影响仍然是模糊不清的。但是,Oracle、它的客户和它的竞争对手正在做准备。
一种开放的方法
Monty Program并不是要支持使用MySQL的数据库管理员的唯一的一家公司。另一群前MySQL开发人员已经开始研制Drizzle,这是仍处在测试阶段的MySQL的一个分支。数据中心管理员Rackspace最近宣布雇佣Drizzle的一些重要的开发人员。这个决定应该使该公司很快推出一种普遍接受的稳定版本的这个软件。
MySQL安装的生态系统将可能会分裂为几个不同的阵营。Widenius已经发出信号称,他要让他的分支机构通过接受社区的瑕疵补丁提供更多的协作和试验社区。MariaDB将花时间调整代码以便最大限度发挥代码的性能,此举可能对于坚定的开发人员更有吸引力。这个新版本包括Maria、PBXT 和Xtra等三个位于MySQL分析机制中的存储引擎。
那些需要高水平性能和ACID处理的开发人员对于这些存储引擎的细节非常感兴趣。这些细节基本上是隐藏在SQL语法分析器后面的。因此,大多数用户将看到这些引擎与来自Oracle的MySQL版本一起发布的引擎是一样的。
Widenius建议说,GPL许可证约束所有的开发人员与自己的软件一起发布MySQL,即使这两个软件是独立运行的。MariaDB或者 Drizzle版本不会帮助他们,除非他们打算发布自己的全部代码。
Widenius说,我的观点是GPL许可证不影响在TCP/IP线路上传输的应用程序。然而,MySQL中的GPL许可证确实会影响一个应用程序,如果这个应用程序是使用MySQL服务器发布的或者需要MySQL服务器工作的。这是因为这个整个系统是MySQL派生的,即使有些部分不是派生的。
但是,其他人不同意这个意见。这个灰色区域中的任何公司都将继续需要Oracle的商业许可证,除非它准备在法庭上争辩这个GPL许可证的细节。或者一些公司可能指出一条道,让Oracle把它的数据库与Linux操作系统结合在一起。许多人认为这个过程不会强迫GPL许可证覆盖这个数据库。
欢迎来到Oracle的世界
对于Oracle来说,Oracle肯定会利用其实力努力支持依靠它重要数据的企业。Oracle拥有一个高素质的销售队伍和培训人员的一个非常好的机制。
Oracle控制MySQL版权的能力及其向用户授权商业许可证的能力还将使许多用户留在它的轨道中,如果支付几千美元购买一个商业许可证比雇佣一个律师确定你是否符合GPL许可证更便宜的话。虽然大量的MySQL用户运行博客和其它基本网站,在这个数据库中存储自己的内容,但是,这些版本的 MySQL软件几乎都没有产生任何收入。Oracle会努力要求他们付费吗?或者,Oracle可能把他们当作一个农场团队并且鼓励他们享受开源软件许可证,直到他们成长为更大的更加商业化的业务。
一些企业也许没有选择,只能笑着和客气地对待Oracle的销售人员。许多软件公司围绕MySQL建造自己的软件包,把这两个软件作为一个集成的工具销售。如果他们要把MySQL与他们编写的代码捆绑在一起,或者他们认为他们必须这样做,他们就需要继续购买商业许可证。
有像MySQL一样的NoSQL
Oracle必须足够聪明地认识到,在用户开始重新编写自己的代码之前它能够提出的要求是有限的。例如,Twitter已经宣布它将实验性地把它的基础设施转换到Cassandra,这是拥有更开放的Apache许可证的另一个开源软件计划。
Twitter的举措也许就是因为技术原因推动的:Cassandra是一个非常简单的快速的数据库,没有许多更高级的保护,如交易等。还有像 Cassandra那样的广泛的多种多样的项目。所有这些通常都是用“NoSQL”这个流行词定义的。
Widenius说,Twitter的做法也许还为那些不想陷入许可证纠纷的用户指明了一条道路。不过,采用NoSQL是要付出代价的:NoSQL 显然有自己的地位。但是,普通的NoSQL开发人员在一个方面给你提供更多的性能,而在许多方面牺牲了灵活性和互操作性。这样是不行的。他们让我想起了在 MySQL创建之前存在的许多数据库。当MySQL开始流行的时候,它消灭了许多像MySQL那样的数据库,因为SQL接口更容易使用和与其它应用程序连接。
同时,目前的NoSQL数据库使人们联想到MySQL以前的样子。这个数据库一开始也同Cassandra一样是边缘的产品,通过放弃大多数传统的数据库的保护措施提供了非常快的存储能力。在过去的许多年了,MySQL增加了许多其它功能,建立了能够处理一些更高级的工作的成功的工具。所有这些工作都需要更多的工程师和更多的预算。
Widenius以及严重依赖MySQL的机构现在都感到不太安全。如果因为潜在的客户要求明确说明许可证问题而导致MariaDB失败,他将剩下一个失败的公司。因此, 他可以说他在辩护中预测的Oracle与Sun合并的不利影响是正确的。如果MariaDB繁荣起来,他将取得成功。但是,他的预测肯定会受到更多的怀疑。在这条道路上,他将成为杀死巨人歌利亚Oracle的大卫。在另一条道路上,他会被看作是带着一个婴儿的卡桑德拉(Cassandra)。这个婴儿长大了并且找到了一个极好的生活,拥有漂亮的朋友和自己的大游艇。在这两种情况下,它既是正确的也是错误的。




更多