日期:2013-05-15  浏览次数:20374 次


MySQL扫盲 -- 授权方式

作者:王猛 (HeartIcy@163.com)

很多人都不理解MySQL的授权方式,次要缘由是没有中文材料别无其他!
我不想嘲笑谁,但是我认为有必要搞清楚这一重要的要素。国际官司我
们曾经吃亏太多了,我不想这变成笑柄。

当前,MySQL采用双重授权(Dual Licensed),他们是GPL和MySQL AB
制定的商业答应协议。如果你在一个遵照GPL的自在(开源)项目中使
用MySQL,那么你可以遵照GPL协议使用MySQL。否则,你需求购置MySQL
AB制定的那个商业答应协议。这里最重要的一点就是要想无偿使用MySQL,
你所开发的软件必须是遵照GPL的自在(开源)软件,虽然被批准的自在
(开源)答应协议有很多个。

理清授权管辖的范围

MySQL是一套客户端/服务器(C/S)结构的系统。双重答应机制对两大块
同时进行约束,但是并不绝对。MySQL AB(MySQL的出品公司)考虑到便
于人们使用,客户端是完全遵照GPL答应。也就是说,在理想上MySQL的
双重答应机制这一双重的特点是对服务器端而言的。我想,我恐怕会把
一些人搞糊涂,这里所说的客户端指的是MySQL AB开发的那个命令行下
的客户端工具(mysql.exe)。

不同操作系统下能否有特殊的限制?

在当前可以说没有,如果有只是MySQL具体代码实现上的功用差异,许
可协议本身是没有特定区分的。在晚期MySQL确实对微软/非微软操作系
统进行过特定的区分,在那时如果要获得Windows平台最新的MySQL,
你必须付费购置,如今曾经不同了。

Windows版天性否遭到限制?

刚才曾经说过了,如今没有这种区分,独一的差异是不同操作系统下的
具体实现形成的。当前,你可以随意获得最新的Windows版本分发。他
们是没有功用、时间限制的。当然,你应该遵照答应协议。

以教育为目的能否需求付费?

其实没有这个区分,次要的取决还是软件能否遵照GPL进行发布。当然,
如果只是用来做课堂教学是不用购置商业答应协议,这种情况下MySQL
遵照GPL答应协议。

我该买几个答应证?

MySQL的答应证按照计算机台数计算,一台机器一个。至于一台机器多个
操作系统的情况下该购置几个答应证这种龌鹾问题别问我,我不知道!

答应证和技术支持的关系?!

技术支持和答应证是不同的东西。虽然很多的软件会把它们搭配销售,
但是实际上应该有单独签署一份技术支持保障协议。具体的时限和价格
我不清楚。

MySQL API的授权

MySQL客户端API遵照GPL协议,其中所包含的GNU getopt 遵照LGPL,并
且一些地方用到的regexp库则遵照BSD答应协议。

更多的信息

强烈建议去看看手册中MySQL答应协议的相关授权章节,里边写的非常详
细。