MySQL仍然是免费/开源数据库的不错选择吗?

时间:2010-09-08 22:26:08

标签: mysql database postgresql

直到最近,我还在所有服务器项目中使用MySQL来满足我所有的数据库需求。

然而,在Oracle出现并购买MySQL之后,似乎对MySQL的未来存在一些不确定性。

所以我想知道我是否应该坚持使用MySQL(我非常熟悉),或者我应该切换到像PostgreSQL这样的东西。有什么想法吗?

6 个答案:

答案 0 :(得分:10)

MySQL和PostgreSQL都是开源DBMS,如果他们当前的维护者(公司或其他人)感到厌倦,将继续由独立方开发。 MySQL已经有了一些有趣的问题,例如Drizzle,如果Oracle选择让原始项目停滞不前(嗯,比Sun做的更多......),这可能会更加突出。

您应该根据项目的技术需求进行选择,而不是根据其中一个或另一个“赢”的模糊论点。

(就我个人而言,我绝对认为拥有两者的经验是个好主意。)

答案 1 :(得分:6)

如果您正在寻找切换到postgres的理由,“Sunoracle购买MySQL”并不是一个好消息。 MySQL将会存在一段时间。

来自Oracle Makes Commitments to ... Users of MySQL

  

4.承诺在未来的GPL下增强MySQL。 Oracle将继续增强MySQL并制作后续版本的MySQL,包括版本6,可在GPL下使用。 Oracle不会发布任何新的增强版MySQL企业版,而不会同时发布一个新的,也是GPL许可的MySQL社区版增强版。 Oracle将继续免费公开所有版本的MySQL Community Edition的源代码。

     

...

     

6.增加对MySQL研发的支出。 Oracle承诺为MySQL持续开发(GPL版本和商业版本)提供适当的资金。在接下来的三年中,甲骨文将花费更多的时间用于MySQL全球业务部门的研发(R& D),而不是Sun在交易结束前的最近一个财政年度(2400万美元)。 p>

即便如此,请记住,这是GPL。如果Oracle做了一些非常愚蠢的事情,那么最糟糕的情况就是分叉。

答案 2 :(得分:2)

在Oracle收购SUN之前,MySQL已经遇到了麻烦,版本6.0的开发被取消了,就像版本5.4一样。

版本5.1支持到今年年底2010-12-31,之后,只有扩展支持可用,但您必须付费。没有更多社区补丁。版本5.5或5.6仍然不是GA,仍然是alpha和/或beta。如果你可以没有补丁,只需继续,如果想要补丁但不想要账单,请转到另一个数据库。

MariaDB(Monty的新产品)正在使用MySQL代码,他的最后一个补丁发布在MySQL发布补丁之后的几个月。 MariaDB看起来不太好,它希望保持非常接近原始状态并具有它的依赖性。 MariaDB可能在明年遇到麻烦,因为它支持5.1版本。

所有这些问题都是在Oracle参与之前开始的。离开MySQL的原因很多,但(imho)Oracle不是主要问题。甲骨文想要钱,他们的客户会付钱,从一开始就很清楚。

答案 3 :(得分:0)

类似的事情发生在Sybase上,它似乎是一个相当平稳的过渡。当然情况并非如此,但它们相似......

值得称之的是,甲骨文声称MySQL将会存在一段时间......

答案 4 :(得分:0)

如果MySQL现在正常工作,那么没有理由切换,除非您需要一个仅在其他RDMBS中可用的功能。至于MySQL的未来,即使甲骨文在这个时刻彻底杀了它,GPL许可证也确保了MySQL的源代码将继续存在。由于商标,可能必须被称为其他东西(如MariaDB),但程序本身不能被杀死。

答案 5 :(得分:0)

一方面,我不会采取甲骨文的承诺继续严肃地开发MySQL。每当公司购买与自己的产品竞争的产品时,他们就会声明他们将无限期地完全支持它。但通常几年(或几个月)后,他们会悄悄地将产品从市场中拉出来,为客户提供自己产品的“升级路径”。让我赶紧补充说,我并没有声称在Oracle或MySQL上有任何内部跟踪。这只是一个普遍的观察。

也就是说,如果当前版本的MySQL满足您的需求,那么如果Oracle永远不会进行任何进一步的更新呢?有很多人使用多年前的MySQL版本,这些版本从未打算升级到当前版本。我会说继续使用MySQL。如果Oracle的支持证明很弱甚至不存在,并且在某些时候其他数据库产品正在添加您真正可以使用的功能并且Oracle没有提供,那么您可能有理由进行迁移。当然,可能存在兼容性问题。但是在这一点上有一堆假设:如果Oracle不支持该产品该怎么办?如果有用的新功能被添加到其他产品怎么办?如果我的代码不兼容怎么办?如果火星人入侵怎么办?等