mysql授权许可_分析MySQL的授权许可

MySQL是开源软件,但开源不意味着免费,开源软件的使用应遵循该软件提供的使用授权许可。MySQL的授权许可是英文的,而且一直以来没有权威的中文译本,所以很多人都不清楚其中的细节。

最近我在做一些ASP.NET+MySQL的应用,特地对MySQL的授权许可进行了研究。

(以下说明,如有错误,欢迎指正)

使用MySQL作为数据库的应用是否会“被GPL”

MySQL开源软件(包括MySQL社区版数据库服务器、驱动程序和链接库等)是在GPL许可下提供的。GPL(General Public License)是一种开源许可,其大概的内容是:只要在一个软件中使用(“使用”指类库引用,修改后的代码或者衍生代码)GPL协议的产品,则该软件产品也必须采用GPL协议,即必须也开源。

应用程序是否也必须采用GPL进行开源,是由如何去使用MySQL决定的。如果把MySQL数据库内嵌到应用程序中,成为了应用程序内部的一部分,则整个应用程序都必须遵守GPL的规定。而对于大多数Web应用,数据库并不是跟应用程序绑在一起的,数据库跟应用程序是产品间相互协作的关系,这种情况就不在GPL的约束范围之内。

先别高兴地太早,即使应用程序跟MySQL是相互独立的,但要连接到MySQL,必须使用特定的驱动程序(Driver)或连接器(Connector),一般又将其统称为客户端类库。这些类库基本上是由MySQL在GPL许可下提供的,而且不可避免地会成为应用程序的一部分。这样一来,我们的应用程序还是会“被GPL”吗?事实上,MySQL还准备了一份专门针对客户端类库的《FOSS许可例外》,其大概内容是:只要应用程序中没有使用其他在GPL许可下的开源产品,那么此应用程序就可以采用“FOSS许可列表(包含MIT、BSD、LGPL等常用开源许可)”中的协议进行开源。但是,如果应用程序不是开源的,而且需要进行分发,就必须购买商业许可了。

另外,GPL只限制了对外分发的软件,也就是说,如果该软件只在内部使用,无论开源不开源都管不了你。

是否可以免费使用MySQL

根据MySQL官方的商业许可的相关说明,在两种情况下,可以免费使用MySQL:应用程序是在GPL许可下发布的;

应用程序不用于分发。

非营利组织可以申请免费商业许可,但MySQL表示会carefully considered,估计这种申请不是那么容易通过的。

可见,是否可以免费使用MySQL跟用户是否商业组织没有太大关系,主要还是看产品是不是GPL的、是否分发。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值