27. 第2部 ライセンス編
MySQL Community Serverのライセンス
GPLとは?
オープンソースライセンスって?
具体的にオープンソースの定義は?
オープンソースライセンスの分類
GPLとは?(再び)
フリーソフトウェア
コピーレフト
ソースの改変と「派生物」
GPLと結合
スクリプト言語とGPL
RedHatとGPL(余談)
28. MySQL Community Serverのライセンス
MySQL Community Serverのライセンス
GPL v2です
公式のダウンロードページ
http://dev.mysql.com/downloads/mysql/
MySQL open source software is provided under the GPL License.
OEMs, ISVs and VARs can purchase commercial licenses.
MySQL-server-5.6.*-*.rpmの中にも提示されている
/usr/share/doc/MySQL-server-5.6.*/COPYING
… GPL v2のライセンス文章
/usr/share/doc/MySQL-server-5.6.*/README
… 著作権表示
30. オープンソースライセンスって?
OSIによる「オープンソースの定義(後述)」を守っているライセンスのこと
下記のOSI認定ライセンス(OSI-approved licenses)はすべてオープンソースライセンス
http://opensource.org/licenses/category
現在69種類が認定されています
Apache License, 2.0 (Apache-2.0)
BSD 3-Clause "New" or "Revised" license (BSD-3-Clause)
BSD 2-Clause "Simplified" or "FreeBSD" license (BSD-2-Clause)
GNU General Public License (GPL)
GNU Library or "Lesser" General Public License (LGPL)
MIT license (MIT)
Mozilla Public License 2.0 (MPL-2.0)
Common Development and Distribution License (CDDL-1.0)
Eclipse Public License (EPL-1.0)
などなど
有名なライセンスはほとんど入っています
オープンソースの歴史
1998年2月 ネットスケープ社がブラウザのソースコードを公開した(Mozilla)
このときにMPL(Mozilla Public License )というライセンスと
”オープンソース”という用語がビジネス上の都合で作られた
Goodbye, "free software"; hello, "open source"
http://www.catb.org/~esr/open-source.html
1998年2月下旬 エリック・レイモンドエリック・レイモンドエリック・レイモンドエリック・レイモンドらによりOpen Source Initiative(OSI)という団体も作られた
43. MySQLでのデュアルライセンス
前述の「著作権者による判断」はMySQLのマニュアルで、以下のように明文化されている
http://dev.mysql.com/doc/refman/5.6/en/introduction.html
The MySQL software is Dual Licensed. Users can choose to use the MySQL software as
an Open Source product under the terms of the GNU General Public License
(http://www.fsf.org/licenses/) or can purchase a standard commercial license from Oracle.
See http://www.mysql.com/company/legal/licensing/ for more information on our licensing
policies.
意訳:ユーザーは以下のいずれかを選択できる
MySQLをGPLを元にしたオープンソース製品として使用する
MySQLをOracleから商用ライセンスを購入して使用する
「商用目的」だとどうか、そういう規定は一切無し
45. コミュニティ版と商用版
(注:表ではMySQL Clusterを関連は省略しています。)
コミュニティ版 MySQL Community Database 制限期限なく著作物の「使用」は自由
GPLによる
ほぼ制限のない著作物の「利用許可」
MySQL Community Edition
商用版 年間サブスクリプション
MySQL Database
著作物の期限付き「使用許可」
サービス(アップデートとサポート)の期限付き「使用許諾」
(Oracle Software Update License & Support )
MySQL Standard Edition
MySQL Enterprise Edition
OEMライセンス
MySQL Embedded Database
著作物の期限なし「使用許可」 MySQL Classic Edition
MySQL Standard Edition
MySQL Enterprise Edition
具体的には、MySQLは以下の3形態のライセンスで頒布されている
「コミュニティ版」
http://www-jp.mysql.com/products/community/
「商用版・年間サブスクリプション」
http://www-jp.mysql.com/products/
「商用版・ OEMラインス」
http://www-jp.mysql.com/oem/
(更にLicense、ASFU、ESLなどの契約形態がある?)
46. 商用版 年間サブスクリプション の期限切れ
「MySQL 商用版 年間サブスクリプション」の使用期限が切れたらどうなる?
契約に従って処理をする必要がある
使用許可を含むすべての権利を失う
→プログラムを削除する必要がある
データはそのまま使える
→コミュニティ版をインストールして使用し続けることができる
ただし、コミュニティ版に無いEneteprise Editionの機能は
使用できなくなる
MySQL Enterprise Monitor
MySQL Enterprise Backup
MySQL Enterprise Security
MySQL Enterprise Audit
MySQL Enterprise Scalability
MySQL Enterprise High-Availability
など
53. MySQLとライセンス年表(6/6)
【【【【オラクルオラクルオラクルオラクル時代時代時代時代】】】】((((2010年年年年~~~~現在現在現在現在))))
2010年01月 オラクルに吸収合併
2010年12月 MySQL5.5 GAリリース
MySQL のサブスクリプション価格を改定
Basic Editionの廃止
2012年年年年01月月月月 商用版商用版商用版商用版パッケージパッケージパッケージパッケージ配布配布配布配布のののの統廃合統廃合統廃合統廃合
これ以前は商用ライセンスでもMySQL CSC(Customer Support Center)サイトで
GPL版のrpmが配布され、希望者にのみ商用パッケージを配布するという
なんだかよく分からん方法だった
MySQL-server-enterprise-gpl-*.rpm (Basic,Silver GPL版 CSC配布)
MySQL-server-advanced-gpl-*.rpm (Gold,Platinum GPL版CSC配布)
MySQL-server-enterprise-*.rpm (Basic,Silver 商用版、希望者のみ)
MySQL-server-advanced-*.rpm (Gold,Platinum 商用版、希望者のみ)
MySQL-server-*.rpm (Comunity Server GPL版)
これ以降、www.mysql.comでGPL版、My Oracle Support (MOS)で商用版を配布する形となった。
MySQL-server-advanced-*.rpm (商用版)
MySQL-server-*.rpm (Comunity Server GPL版)
Standard EditionとEnterprise Editionパッケージを1つに統一させ、
紳士協定でライセンスの持ってない機能は使用しないというOracleDBと同じ方式となった
「「「「スッキリスッキリスッキリスッキリ!!」!!」!!」!!」したしたしたした
2012年03月 PHP5.4がリリース
ソースからのビルド時のデフォルトがmysqlndに変更
2013年02月 MySQL5.6 GAリリース
54. MySQL AB末期の黒歴史
MySQL AB末期((((2005年年年年~~~~2007年年年年))))は、以下のようにMySQLプロジェクトの迷走で有名な時期です
5.0の次の5.1以外に5.2やら5.4やら6.0やらブランチを乱立させる
法人向けにもGPLを採用
Enterpriseをフォークさせると発表、その後取りやめ
ストレージエンジンfalconへの切り替えを表明、その後取りやめ
などなど…
実はライセンス関連でもポカをやらかしています。
ドキュメント"MySQL Internals Manual"のMySQL Client/Server Protocolに"Licensing Notice"として
以下のようなことを書いてしまい、ユーザーから総スカンを食らった
The MySQL Protocol is part of the MySQL Database Management System. As such, it falls under the
provisions of the GNU Public License (GPL). A copy of the GNU Public License is available on MySQL's
web site, and in the product download.
Because this is a GPL protocol, any product which uses it to connect to a MySQL server, or to emulate
a MySQL server, or to interpose between any client and server which uses the protocol, or for any
similar purpose, is also bound by the GPL. Therefore if you use this description to write a program, you
must release your program as GPL. Contact MySQL AB if you need clarification of these terms or if you
need to ask about alternative arrangements.
意訳:MySQLプロトコルもMySQL DBMSの一部だから、GPLの規定に含まれる
,一-、
/ ̄ l | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
■■-っ < んなこたーない
´∀`/ \__________
__/|Y/\.
Ё|__ | / |
| У.. |
現在、この文章は無くなりました。
http://dev.mysql.com/doc/internals/en/client-server-protocol.html
58. MySQL Connectorsのライセンス
接続用ドライバMySQL Connectorsのライセンスは以下の2つのデュアルライセンス
商用版ライセンス (年間サブスクリプションまたはOEMライセンス)
(FOSSライセンス例外規定付き)GPL v2
"FOSSライセンス例外(FOSS License Exception)" とは?
http://www.mysql.com/about/legal/licensing/foss-exception/
上記URLの"FOSS License List" にリストされてるオープンソースライセンス
の元でソフトウェアを頒布する場合(正確な条件については後述)は、
GPL版のMySQL Connectorsをバインディング(リンクなど)していても
GPLに従わなくてもよい
注意:
MySQLサーバやコマンドラインクライアントにはFOSSライセンス例外はない
あくまでもMySQL Connectorsだけの例外規定
FAQ:
Q2: Does the FOSS License Exception apply to all Oracle software
products, including the MySQL database server?
A: No. The FOSS License Exception does not apply to Oracle’s
MySQL database server or any Oracle or MySQL software other than
the GPL-licensed MySQL Client Libraries.
59. "FOSSライセンス例外" 対象ライセンスリスト
"FOSSライセンス例外" の対象となるFOSSライセンスのリスト( February 23, 2012 )
http://www.mysql.com/about/legal/licensing/foss-exception/
Academic Free License 2.0
Apache Software License 1.0/1.1/2.0
Apple Public Source License 2.0
Artistic license From Perl 5.8.0
BSD license "July 22 1999"
Common Development and Distribution License (CDDL) 1.0
Common Public License 1.0
Eclipse Public License 1.0
European Union Public License (EUPL)1 1.1
GNU Affero General Public License (AGPL) 3.0
GNU Library or "Lesser" General Public License (LGPL) 2.0/2.1/3.0
GNU General Public License (GPL) 3.0
IBM Public License 1.0
Jabber Open Source License 1.0
MIT License (As listed in file MIT-License.txt)
Mozilla Public License (MPL) 1.0/1.1
Open Software License 2.0
OpenSSL license (with original SSLeay license) "2003" ("1998")
PHP License 3.0/3.01
Python license (CNRI Python License)
Python Software Foundation License 2.1.1
Sleepycat License "1999"
University of Illinois/NCSA Open Source License
W3C License "2001"
X11 License "2001"
Zlib/libpng License
Zope Public License 2.0
60. FOSSライセンス例外を有効にする条件
"FOSSライセンス例外" を有効にする条件
http://www.mysql.com/about/legal/licensing/foss-exception/
A FOSS application developer ("you" or "your") may distribute a Derivative Work provided that
you and the Derivative Work meet all of the following conditions:
a). You obey the GPL in all respects for the Program and all portions (including modifications) of the Program included in the Derivative Work
(provided that this condition does not apply to Independent Works);
b). The Derivative Work does not include any work licensed under the GPL other than the Program;
c). You distribute Independent Works subject to a license listed in the section below titled "FOSS License List";
d). You distribute Independent Works in object code or executable form with the complete corresponding machine-readable source code on the
same medium and under the same FOSS license applying to the object code or executable forms;
e). All works that are aggregated with the Program or the Derivative Work on a medium or volume of storage are not derivative works of the
Program, Derivative Work or FOSS Application, and must reasonably be considered independent and separate works.
参考訳、無保証です
FOSSアプリケーション開発者は、次に示す条件をすべて満たすなら派生物を配布することができます:
(訳注:下記の"このプログラム"("the Program")は、MySQLクライアントライブラリを指す)
a). "派生物"中に含まれる"このプログラム(=MySQLクライアントライブラリ)"及び "このプログラム"から分割された一部分(修
正されている場合も含める)はすべて、何処までもGPLに従うこと
(この条件は"独立した作品"には適用されないと規定される)
b). "派生物"中に、GPLの下でライセンスされた著作物は含めてはいけない
(”このプログラム(=MySQLクライアントライブラリ)”は除く)
c). “FOSSライセンスリスト” にリストされた中のどれか1つのライセンスの下に”独立した作品”を配布すること。
d). "独立した作品"をオブジェクトコードや実行可能形式で配布するときには、同じ媒体を使い、同じFOSSライセンスの下で、
コンピュータで読み取り可能な完全なソースコードも一緒に配布すること。
e).同一メディア上や同一ストレージボリューム上に"このプログラム(=MySQLクライアントライブラリ)"や"このプログラムの派
生物"と共に集積された著作物は、すべてが"このプログラム"や"派生物"やFOSSアプリの派生物なわけではなく、独立した
別々のモノであると合理的に考えなければならない。
(訳注: なんかよく分からない… … )