MySQL采用双重授权(Dual Licensed),包含了GPL协议和商业许可协议。如果你在一个遵循GPL的自由(开源)项目中使用MySQL,那么你可以遵循GPL协议使用MySQL,否则你需要购买商业许可协议。遵守GPL协议,是为了保持开源(Oracle有商业授权,所以他修改的代码可以不必公开),所以你能看到很多厂商的不同版本的开源MySQL,比如AliSQL,Facebook,Twitter,Percona等,因为他们修改了代码,加了自己客制化的东西。据了解,Facebook是用MySQL很多的一个案例,为了节省成本,他们选择向Oracle开源他们的更新,还购买了一定的服务。如果你只是使用MySQL的话,建议你考虑购买Oracle的商业版,Oracle的商用版提供的高可用性,性能监工具、备份还原工具还是不错的,在云端和本地都可以部署,上云下云非常方便。
注意:个人的理解,仅供参考。
下面顺便了解一下其他软件协议,比如常用的BSD,GPL,Apache等,对以后或许有帮助。你可以针对你的软件选择不同的授权方式,仅供参考。
BSD开源协议是一个给于使用者很大自由的协议,可以自由的使用,也可以修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。一个显著的特点就是鼓励代码共享,但需要尊重代码作者的著作权。
Apache Licence 2.0
Apache Licence是著名的非盈利开源组织Apache采用的协议,与和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,也可作为开源或商业软件再发布。
MIT
MIT是和BSD的许可协议类似,作者只想保留版权,没有其它方面任何的限制。不论你是以源代码发布或者二进制发布的,必须在你的发行版里包含原许可协议的声明。
GPL(General Public Licence)
GPL的出发点是代码的开源,可以修改、引用和免费试用。但不允许修改后和衍生的代码做为闭源的商业软件发布和销售。这个也是和BSD,Apache License不一样的地方。所以你能看到很多Linux,比如Redhat,Oracle Unbreakable Linux等。
LGPL
LGPL是GPL的一个为类库使用设计的开源协议。允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并发布和销售。比如glibc,你就可以引用他,但不必开源你的源代码。
MPL
MPL许可证出现的最重要原因就是,Netscape公司认为GPL许可证没有很好地平衡开发者对源代码的需求和他们利用源代码获得的利益。可以理解为对BSD和GPL协议的结合。除了接口程序的源代码以MPL许可证的形式对外许可外,源代码库中的源代码就可以不用MPL许可证的方式强制对外许可。
下图是Unix的历史

http://www.definitelysimple.com/articles/understanding-free-opensource/
https://www2.cs.duke.edu/courses/compsci308/spring16/classwork/opensource/
http://www.mozilla.org/MPL/MPL-1.1.html
https://www.mysql.com/about/legal/licensing/oem/
https://www.oracle.com/cn/mysql/index.html