# MySQL 的开发模式

它的开发过程和发布模型逐渐稳定下来。在定期发布的新里程碑开发版本中,会包含即将在下一个 GA(Generally Available 通常可用的版本,也意味着达到了满足生产环境中使用的质量标准) 版本发布的新特性,这样做是为了测试和获得反馈,但是不要用在生产环境中。最终,Oracle 会将稳定的特性打包发布一个新的 GA 版本。

MySQL 依然遵循 GPL 开源协议,全部的源代码(除了商业版本的插件支持)都会放开给社区。MySQL AB 曾经尝试过不同版本的策略,但是遇到付费用户遇到问题无法从社区的测试和反馈中获得好处。不受企业用户的欢迎,所以后来被 Sun 废除了。

现在 Oracle 为付费用户单独提供了一些服务器插件,而 MySQL 本身还是遵循开源模式。

插件模式很重要,例如:如果 Oracle 将 InnoDB 的全文索引功能以 API 的方式实现,那么就可能以同样的 API 实现 Sphinx 或则 Lucene 的插件,这可能对一些用户更有用。服务器内部的 API 设计也很干净,这对于提升代码质量非常有帮助。