この記事はIntroducing MySQL Innovation and Long-Term Support (LTS) versionsの翻訳版です。

オラクルでは、お客様のニーズに合わせた製品の改善を常に模索しています。MySQLにおけるバージョン管理モデルの重要な改善点である、MySQL InnovationおよびLong-Term Supportedリリースをご紹介します。

MySQL 5.7以前におけるパッチ・リリースは、バグ修正およびセキュリティ・パッチに重点を置いていました。これはMySQL 8.0で変更され、パッチ・リリースの継続的デリバリ・モデルにおいても新機能が含まれていました。これによりMySQLは、数年に一度機能をリリースするのみでなく、より頻繁にユーザーに新機能をリリースすることができました。しかしこのアプローチには、機能更新頻度の低いクリティカル・パッチのみを必要とするプロジェクトやアプリケーションにとって、課題となる可能性があることを私たちは理解しています。私たちはお客様のフィードバックに耳を傾け、業界の動向を観察しました。結果、現在では Innovation リリースと Long-Term Support (LTS) リリースのいずれかを選択できるバージョン管理モデルに移行しています。

新しい mysql のバージョニング

Innovation と LTS はどちらも製品グレードの品質を持っています。最新の機能や改善点にアクセスし、最新のテクノロジを常に把握したい場合、MySQL Innovation リリースが最適である可能性があります。これらのリリースは、高レベルの自動テストと最新のCI技術を備えた、ペースの速い開発環境で作業する開発者およびDBAにとって理想的です。一方、環境が確立された動作を必要とする場合は、LTS リリースがよい選択肢です。これらのリリースには必要な修正のみが含まれているため、データベースの動作の変更に伴うリスクが軽減されます。

新しい MySQL バージョン管理モデルでは、特定のアプリケーションや環境のニーズに適したオプションを柔軟に選択できます。私たちの目標は、Innovation と LTS の両方のリリースで卓越したユーザー・エクスペリエンスを実現することです。新しいバージョン管理モデルおよびそれへの移行プロセスに関する追加情報を、本記事で確認してください。

Innovation および LTS リリースへの移行

今後のバージョンは新しい MySQL バージョン管理モデルに移行します。MySQL バージョン8.1.0が最初の Innovation リリースとなり、8.0.34 以降は、2026年4月にスケジュールされている8.0 の End-Of-Life (EOL) までバグ修正のみに移行します。今から約1年後、MySQL バージョン8.xは最終的に LTS となり、ユーザーが8.0.xから8.x LTS バージョンに移行するのに十分な期間を提供します。

実際には、この移行期間において、MySQL データベースの最新の機能、改善およびすべてのバグ修正が必要な場合は、Innovation リリース・トラック (8.1.x、8.2.x、8.3.xなど) を使います。MySQL データベースのバグ修正のみが必要な場合は、8.0.x リリース (8.0.35、8.0.36、8.0.37など) を使用します。どちらの場合でも、Oracle Critical Patch Updates (CPU)カレンダーに従って、四半期ごとに MySQL データベースの更新を計画する必要があります。8.x が LTS になると、8.0.x バグ修正トラックから LTS リリース・トラック (8.0.37から8.4.1など) への移行を計画、テストおよび実行できます。

MySQL HeatWave データベースサービス

MySQL HeatWave データベースサービスは、Oracle の MySQL チームによって、完全に管理、開発およびサポートされています。MySQL データベースの最新バージョンを通じて、最新の改善およびセキュリティ・パッチを提供します。MySQL HeatWaveのお客様は、初日からバグ修正の恩恵を受けられ、OLTP、OLAP、機械学習、レイクハウスなどの領域におよぶ最新機能にアクセスできます。

MySQL HeatWave のユーザーは、8.1.0 以降の Innovation リリースおよび 8.0.34 以降のバグ修正リリースから選択できるようになりました。このサービスでは、DB システムごとに MySQL バージョンを柔軟に選択できるため、ユーザーはアプリケーション要件に基づいてバージョンを混在あるいは統一できます。8.1以上の Innovation リリースを使用している企業は、サービスの可能性を最大限に引き出し、最新の機能やバグ修正にアクセスできます。また重要なバグの修正のみを求め、最新機能を必要としない方は、MySQL の 8.0.x リリースの選択もできます。

MySQL のポートフォリオとサポート・ライフサイクル

LTS リリースは、オラクルのライフタイム・サポート・ポリシーに従います。これには、5年間の Premier Support と3年間の Extended Support が含まれます。Innovation リリースは、次のメジャーおよびマイナー・リリースまでサポートされます。

MySQL のポートフォリオに含まれるほとんどの製品には、Innovation と LTS のバージョンがあります。

  • MySQL Server、MySQL Shell、MySQL Router、MySQL NDB Cluster には Innovation と LTS のバージョンがあります。
  • MySQL Operator for Kubernetes、with InnoDB ReplicaSet、Cluster and ClusterSet には Innovation と LTS のバージョンがあります。
  • MySQL Connectors は存在する最新のバージョン番号を使いますが、一般に使用可能とみなされ、サポートされているすべてのMySQL Serverバージョンとの互換性が維持されます。
  • MySQL Workbench は 8.0.x にとどまり、一般に使用可能であり、サポートされているすべての MySQL Server バージョンとの互換性が維持されます。

MySQL バージョン リリース間隔

  • MySQL 8.0.34+ はバグ修正専用リリースになります(赤)
  • Innovation リリースはおおよそ四半期ごとに提供されます(灰色)
  • 2年ごとに、新しい Long-Term Support 版がリリースされます(青色)。例外は、8.0 の EOL より前に提供される 8.x LTS リリースです

続く数年間、MySQL のバージョン管理は次の図のようになります。

新バージョン管理

これはあくまで例であり、最終的なバージョン番号がここで提示されたとおりであることは確約されていない点にご留意ください。(訳者註:マス目は2マスで1四半期を示しています。)

Innovation リリース

Innovation リリースは、MySQL 8.0 の継続的開発モデル (8.0.34未満) に類似しており、バグ修正、セキュリティ・パッチおよび新機能が含まれています。

Innovation リリースのサポートは、次のマイナー・リリース (Innovation または LTS) までに限られます。現在ペースとしている目標は、四半期ごとに Innovation リリースを行い、マイナー・バージョン番号(8.2、8.3など)を増分することです。Innovation リリース内のパッチ・リリースはありえますが、提供される可能性は低くなります。

Innovation リリースも正式版として提供され、本番環境で利用されることも想定されています。バグフィックスおよびセキュリティ・パッチは、通常、その Innovation リリース内のパッチ・リリースの一部としてではなく、次の Innovation または LTS リリースに含まれます。Innovation リリースを使用する場合、最新のバグ修正およびセキュリティ・パッチに遅れないように、最新の Innovation リリースに定期的にアップグレードしなければなりません。

Innovation リリースには、バグ修正、セキュリティ・パッチおよび新機能に加えて、機能の新たな非推奨化や削除、さらには動作の変更が導入されます。このような変更が導入された場合のアップグレードリスクと複雑さを軽減するため、いつどのように実施されるかに関するポリシーとベスト・プラクティスが挙げられます。

機能の非推奨化と削除

MySQLの以前のリリースでは、1つのリリース (5.7など) での機能の非推奨化は、次のメジャー・リリースまたはマイナー・リリース (8.0など) でその機能を削除できることを意味します。Innovation リリースの導入により、メジャー/マイナー・バージョンが大幅に増え、その結果、非推奨化や削除が発生しうる場合も変化します。

機能または動作があるリリースで非推奨になった場合 (9.2 Innovation など) 、この機能は少なくとも1年間 (9.6 Innovation まで) 削除できません。これは、ユーザーが Innovation リリースを採用しているときに、構築されているデータベースの変更時間を提供するためです。

LTSリリース内では機能の削除はありません。機能は最初のLTSリリース (8.4.0 LTS など) でのみ削除および追加できますが、続くマイナーバージョンで削除/追加することはできません。

新しいモデルに移行し、最初の 8.x LTS リリースに移行すると、非推奨機能および削除された機能の増加が予想されます。

動作変更

Innovation リリースでは新機能とは別に、コードのリファクタリングや、あるいは MySQL が SQL 標準に従って動作するような変更が行われた時などに、動作の変更も発生し得ます (これは LTS リリース内では発生しません) 。

動作の変更は、特にSQL構文、新しい予約語、クエリ実行、さらにはクエリのパフォーマンスといったアプリケーション関連の各処理に、大きく影響する可能性があります。動作の変更への対処にはアプリケーションの変更が必要になる場合があり、これはユーザーの移行作業においてかなりの労力になり得ます。

各動作の変更をドキュメント化するだけでなく、バージョン間でアップグレードやダウングレードを容易にできるように、必要なツールおよび構成設定をユーザーに提供することが重要であると、私たちは考えています。動作変更のタイプに応じて、確実な情報伝達のために様々なアプローチを提供します。詳細はそのような変更が発生した際に提供いたします。

Long-Term Supported リリース

約2年ごとに、マイナー・バージョンが Long-Term Supported リリースとして提供されます。このバージョンには、以前サポートされていたリリースと同様に、5年間の Premier Support と3年間の Extended Support があります。これは MySQL 5.7 以前のリリースと同様です。

LTS はメジャー・リリースの最後のバージョンにもなり得ます。その次のリリース (Innovation リリース) によって、メジャー・バージョンが増加します。たとえば、MySQL 8.4.0 が 8.x LTS リリースの場合、MySQL 9.0 が次の Innovation リリースになります。

アップグレードとダウングレード

メジャーおよびマイナーの Innovation リリースや2年ごとの LTS リリースの提供回数が増えるにつれ、ユーザーはより多くの選択肢からサポート対象バージョンを選べるようになります。Innovation シリーズを採用するには、バグ修正およびセキュリティ・パッチに従って頻繁な更新が必要となり、そのためにはアップグレードおよびダウングレードのポリシーが必要となります。

サポートされる様々なアップグレードおよびダウングレード・シナリオについて、詳細を示します。

同じ LTS リリース内でのアップグレードとダウングレード

同じ LTS リリース内では、機能は同じであり、データ形式も変更されません。

それゆえ、

  • インプレース・アップグレードおよびダウングレードが可能です。これは、ダウングレードが不可能であり、バージョンを飛ばしたアップグレードも推奨されていなかった、8.0.34未満の MySQL 8.0.x リリースと比較して改善されています。
  • 同じ LTS リリース内では、InnoDB CLONE がアップグレードおよびダウングレード双方でサポートされます。

これに完全に移行するにはさらにいくつかの作業が必要となるため、対応は 8.0.34 以降のリリースになります。

ある LTS から別の LTS へのアップグレードとダウングレード

  • 間にいくつか存在する Innovation リリースへのアップグレードを中間ステップとして実行しなくても、ある LTS リリースから次の LTS リリースに直接移行できます。
  • アップグレードは、インプレース・アップグレード、MySQL Shell でのダンプとロード、および MySQL の非同期レプリケーションにより実現できます。
  • 後に示すとおり、進行中のアップグレードのロールバックだけを目的として、MySQL Shell のダンプとロード、および MySQL レプリケーションによるダウングレードが行えます。

Innovation リリースでのアップグレードとダウングレード

  • ある Innovation または LTS リリースから将来の Innovation リリースへのインプレース・アップグレードは、次の LTS リリースまでの間サポートされます。レプリケーションとダンプおよびロードも機能します。
  • ダウングレードには、論理ダンプとロードが必要です。これは、8.0.34 未満の MySQL 8.0.x と同様です。

MySQL の非同期レプリケーションによるアップグレードとダウングレード

ビジネス・クリティカルな環境でのアップグレードは多くの場合、MySQL の非同期レプリケーションを用いて行われ、新しいバージョンでの環境が現在のバージョンのレプリカとして設定されます。これにより、ダウンタイムがほぼゼロのアップグレードが可能になります。

レプリケーションはある LTS または Innovation リリースをソースとすると、次に挙げるバージョンをレプリカとして可能になります。

  • 次の LTS リリース
  • 次の LTS リリースまでの間の全ての Innovation リリース (例として、LTS 8.4 → LTS 9.7は可能ですが、LTS 8.4 → LTS 10.7 は不可)

新しいバージョンを展開した後に問題が発生した場合は、以前のバージョンにレプリケートして戻せることが重要です。したがって、MySQL の非同期レプリケーションは以前のバージョンにレプリケートできます。このサポートはロールバックのみを目的としており、新しい機能はまだ使用されていないことが必要ですし、通常の継続的な本番環境構築の一部と見なすことはできません。

アップグレードとダウングレードの対応状況マトリクス

下の図は、各アップグレード/ダウングレード方法の対応状況マトリクスです。

アップグレード

 

インプレース

CLONE

非同期レプリケーション

ダンプとロード

LTS 8.4 → LTS 9.7

LTS 8.4.11 → LTS 8.4.20

Innovation 8.1 → 8.2 

Innovation 8.1 → 8.3

Innovation 9.1 → LTS 9.7

LTS 8.4 →  LTS 10.7

ダウングレード

 

インプレース

CLONE

非同期レプリケーション

ダンプとロード

LTS 8.4.20 → 8.4.11

LTS 9.7 → LTS 8.4

✓✮

✓✮

LTS 9.7 → Innovation 9.6

✓✮

✓✮

LTS 9.7 → Innovation 9.5

✓✮

✓✮

(✮) は、ロールバック用途のみでのサポートに限られていることを示します。

まとめ

この新しいモデルに移行するにあたっては、ぜひ私たちのSlackコミュニティ・チャネルへの参加や、サポートプログラムへの参加を歓迎いたします。

最新のMySQLリリースは、mysql.com/jp/downloadsでダウンロードするか、あるいはhttps://edelivery.oracle.com/のOracle Software Delivery Cloudを用いると、MySQL Enterprise Editionのバイナリもダウンロードできます。

新機能、改善、バグ修正、破壊的な可能性のある変更など、各リリースの詳細情報については、MySQL リリースノートを参照してください。

MySQL HeatWave データベース・サービスでは、これまでの 8.0 に加えて、最新の MySQL 8.1 Innovation リリースも提供されるようになりました。これには、OLTP、OLAP、機械学習、LakeHouse などの最新の機能が含まれます。無料トライアル・アカウントについては、oracle.com/mysql/freeを参照してください。

We’re thrilled about the opportunities this new versioning model will bring and eagerly await your feedback. Together, we can continue to make MySQL even better.