MySQL闇歴史2 バージョン5.0

これは MySQL闇歴史 Advent Calendar 2022 の2枚目のカレンダー12日目のエントリーです。


 MySQL 5.0 ほど、MySQLの歴史の中でバージョン番号の理解が難しいバージョンはなかった。ひとつ前のバージョンはいくつなのかがすぐに把握できないという、この時代に起こった事とは。

知名度   :★★★☆☆
闇度    :★★★☆☆
把握の難易度:★★★★★


 MySQL社のSun Microsystems による買収、そして Oracle による買収の歴史を通貫して見続けてきたバージョン。それが MySQL 5.0 である。この次期、MySQLチームはMySQLのマネタイズに苦労をしていたように見える。エンタープライズ版を契約してくれた顧客にどのように分かりやすいメリットを提供するか、試行錯誤をしていたのではないだろうか。筆者はCommunity版(GPL)ユーザとして外部から見ていただけなので、想像で語るしかない部分は多いが、当たらずともと遠からずと感じている。

 MySQL5.0.27と5.0.28のリリースの際、MySQL社は突然「エンタプライズ版とコミュニティ版のバージョンを分ける」ことを発表した。奇数番号はコミュニティ版、偶数番号はエンタープライズ版とする、ということだった。
 エンタープライズ版は、顧客に対する「迅速に最新の修正状態を提供する」というメリット提供のためか、ほぼ毎月のようにリリースされていた。偶数番号のみを使って、である。
 一方のコミュニティ版は、エンタープライズ版ほどには頻繁にリリースされないので、奇数番号は欠番となるバージョン番号が続出した。

 ところでMySQLには、内部でのバージョン番号処理の一部に「X.Y.Z 形式のバージョン番号それぞれの要素は2桁までしか使えない」という制約がある。偶数番号がものすごい早さで消費され、このままのリリースペースで行くとマイナーバージョン(X.Y.ZのZの部分)が99を超えるぞ!どうするMySQL!? と ざわざわ し始めた頃、MySQL 5.0.82 にてエンタープライズ版とコミュニティ版のバージョン番号が統合されることになった。この統合の発表があってからも約3年間、MySQL5.0のアップデートは継続され、2012年3月に MySQL 5.0.96 が最後のバージョンとなった。ギリギリ2ケタで間にあった。めでたしめでたし。


 付録として、MySQL 5.0 のエンタープライズ版としてリリースされたバージョンの履歴、ならびに、コミュニティ版としてリリースされた履歴を紹介しておく。コミュニティ版のバージョンがひどく飛んでいたことが分かると思う。
 エンタープライズ版の MRU や QSP については詳しい人の説明に期待したい(Monthly や Quick のような意味だと想像する)。


.

付録:MySQL Enterprise 5.0 リリース履歴(Community版と分離時期)

種別 バージョン リリース日
MySQL Enterprise 5.0.28 2006/10/24
MySQL Enterprise 5.0.30 [MRU] 2006/11/14
MySQL Enterprise 5.0.32 [MRU] 2006/12/20
MySQL Enterprise 5.0.34 [MRU] 2007/01/17
MySQL Enterprise 5.0.30sp1 [QSP] 2007/01/19
MySQL Enterprise 5.0.36 [MRU] 2007/02/20
MySQL Enterprise 5.0.38 [MRU] 2007/03/20
MySQL Enterprise 5.0.36sp1 [QSP] 2007/04/12
MySQL Enterprise 5.0.40 [MRU] 2007/04/17
MySQL Enterprise 5.0.42 [MRU] 2007/05/23
MySQL Enterprise 5.0.44 [MRU] 2007/06/21
MySQL Enterprise 5.0.46 [MRU] 2007/07/13
MySQL Enterprise 5.0.44sp1 [QSP] 2007/08/01
MySQL Enterprise 5.0.48 [MRU] 2007/08/27
MySQL Enterprise 5.0.50 [MRU] 2007/10/19
MySQL Enterprise 5.0.52 [MRU] 2007/11/30
MySQL Enterprise 5.0.50sp1 [QSP] 2007/12/12
MySQL Enterprise 5.0.54 [MRU] 2007/12/14
MySQL Enterprise 5.0.50sp1a [QSP] 2008/01/11
MySQL Enterprise 5.0.54a [MRU] 2008/01/11
MySQL Enterprise 5.0.56 [MRU] 2008/02/06
MySQL Enterprise 5.0.58 [MRU] 2008/03/05
MySQL Enterprise 5.0.56sp1 [QSP] 2008/03/30
MySQL Enterprise 5.0.60 [MRU] 2008/04/28
MySQL Enterprise 5.0.62 [MRU] 2008/05/12
MySQL Enterprise 5.0.64 [MRU] 2008/06/10
MySQL Enterprise 5.0.60sp1 [QSP] 2008/06/27
MySQL Enterprise 5.0.66 [MRU] 2008/07/09
MySQL Enterprise 5.0.66a [MRU] 2008/07/16
MySQL Enterprise 5.0.68 [MRU] 2008/08/13
MySQL Enterprise 5.0.70 [MRU] 2008/09/27
MySQL Enterprise 5.0.66sp1 [QSP] 2008/10/23
MySQL Enterprise 5.0.72 [MRU] 2008/10/24
MySQL Enterprise 5.0.74 [MRU] 2008/12/03
MySQL Enterprise 5.0.76 [MRU] 2009/01/05
MySQL Enterprise 5.0.72sp1 [QSP] 2009/01/13
MySQL Enterprise 5.0.78 [MRU] 2009/02/06
MySQL Enterprise 5.0.79 [MRU] 2009/03/09
MySQL Enterprise 5.0.74sp1 [QSP] 2009/04/30
MySQL Enterprise 5.0.80 [MRU] 2009/05/01


.

付録:MySQL Community 5.0 リリース履歴(Enterpriseとの分離時期とその前後)

5.0.51の次のバージョンが5.0.67だったり(その間9ヶ月間リリースされなかった)、5.0.75はソースコードのみのリリースだったりするなど(参考:MySQL 5.0.75 リリース - sakaikの日々雑感~(T)編)、コミュニティ版ユーザにとっては忍耐の時期だったとも言えそうだ。

種別 バージョン リリース日
MySQL 5.0.26 2006/10/03
MySQL Community Server 5.0.27 2006/10/21
MySQL Community Server 5.0.33 2007/01/09
MySQL Community Server 5.0.37 2007/02/27
MySQL Community Server 5.0.41 2007/05/01
MySQL Community Server 5.0.45 2007/07/04
MySQL Community Server 5.0.51 2007/11/15
MySQL Community Server 5.0.51a 2008/01/11
MySQL Community Server 5.0.51b 2008/04/24
MySQL Community Server 5.0.67 2008/08/04
MySQL Community Server 5.0.75 2008/12/17
MySQL Community Server 5.0.77 2009/01/28
MySQL Community Server 5.0.81 2009/05/01
MySQL 5.0.82 2009/05/20
An image by Dall-E