[转帖]MySQL的版本情况
Introducing MySQL Innovation and Long-Term Support (LTS) versions (oracle.com)
Introducing MySQL Innovation and Long-Term Support (LTS) versions
July 18, 2023 | 12 minute read
At Oracle, we constantly look for ways to improve our products to better fit your needs. We are excited to introduce MySQL Innovation and Long-Term Supported releases, which is an important improvement in the MySQL versioning model.
The patch releases of MySQL 5.7 and previous releases were focused on bugfix and security patches. That changed in MySQL 8.0 with the continuous delivery model in that patch releases also contained new features. That allowed MySQL to release new features to users more frequently rather than only being able to release features every few years. However, we understand that this approach can cause challenges for projects and applications that require only critical patches with less frequent behavior changes. We listened to your feedback and observed industry trends, and we are now transitioning to a versioning model where you can choose between Innovation and Long-Term Support (LTS) releases.
Both Innovation and LTS are production-grade quality. If you desire access to the latest features and improvements and enjoy staying on top of the latest technologies, the MySQL Innovation releases might be the best fit for you. These releases are ideal for developers and DBAs working in fast-paced development environments with high levels of automated tests and modern continuous integration techniques for faster upgrade cycles. On the other hand, if your environment requires established behavior, then the LTS releases are the way to go. These releases contain only necessary fixes, so they reduce the risks associated with changes in the database software's behavior.
With the new MySQL versioning model, you have the flexibility to select the option that suits your specific application and environment needs. Our goal is to ensure that you have an exceptional user experience with both Innovation and LTS releases. You can discover additional information about the new versioning model and the transition process below.
Transitioning into Innovation and LTS releases
We're transitioning to the new MySQL versioning model with our upcoming versions. MySQL database version 8.1.0 will be our first Innovation release, and 8.0.34+ will transition to only bug fixes until 8.0 End-Of-Life (EOL) scheduled for April-2026. Approximately one year from now, MySQL version 8.x will eventually become LTS which will provide ample time for users to migrate from 8.0.x to the 8.x LTS version.
In practice, in this transition period, if you want the latest features, improvements, and all bug fixes for your MySQL databases, use the Innovation release track (eg., 8.1.x, 8.2.x, 8.3.x, etc.). If you need only bug fixes for your MySQL database, use 8.0.x releases (eg., 8.0.35, 8.0.36, 8.0.37, etc.). In both cases, you should plan to update your MySQL databases quarterly accordingly to Oracle Critical Patch Updates (CPU) calendar. When 8.x becomes LTS, you can plan, test, and migrate from the 8.0.x bug fix track to the LTS release track (ex., from 8.0.37 to 8.4.1).
MySQL HeatWave Database Service
MySQL HeatWave database service is fully managed, developed, and supported by Oracle's MySQL team. We provide the latest improvements and security patches through up-to-date MySQL database versions. MySQL HeatWave customers have access to bug fixes from day-1 and the latest features, including OLTP, OLAP, machine learning, and Lakehouse.
MySQL HeatWave users now have the option to select from Innovation releases, beginning with 8.1.0, and Bug Fix releases, beginning with 8.0.34. The service gives flexibility in choosing the MySQL version per DB System, enabling users to mix and match versions based on application requirements. Those using 8.1+ Innovation releases can take full advantage of the service's potential, gaining access to the latest features and bug fixes. Alternatively, those who only require critical bug fixes and do not need the latest features can opt for 8.0.x releases for their MySQL DB Systems.
MySQL Portfolio & Support Lifecycle
LTS Releases will follow the Oracle Lifetime Support Policy, which includes 5 years of premier and 3 years of extended support. Innovation releases will be supported until the next major & minor release.
Most products in MySQL's portfolio will have Innovation and LTS versions:
- MySQL Server, MySQL Shell, MySQL Router, MySQL NDB Cluster will have Innovation and LTS releases.
- MySQL Operator for Kubernetes, with InnoDB ReplicaSet, Cluster and ClusterSet will have Innovation and LTS releases.
- MySQL Connectors will use the latest version used, but will be considered Generally Available and will remain compatible with all supported MySQL Server versions.
- MySQL Workbench will remain on 8.0.x and is Generally Available and will remain compatible with all supported MySQL Server versions.
MySQL Versions Release Cadence
- MySQL 8.0.34+ will become bugfix only release (red)
- Innovation releases (grey) will likely happen quarterly
- About every 2 years a new Long Term Support version will be released (blue). An exception is the 8.x LTS release which will happen well before EOL of 8.0
For the next few years, the MySQL versioning will look similar to the example diagram as shown:
Note that this is an example, there is no commitment that the version numbering will be exactly as presented.
Innovation Releases
Innovation releases are similar to MySQL 8.0 continuous development model (< 8.0.34) and include bugfixes, security patches, and new features.
Support for Innovation releases is limited until the next minor release (Innovation or LTS). The current cadence goal is to have an Innovation release every quarter, incrementing the minor version number (eg. 8.2, 8.3, etc.). Patch releases within Innovation releases are possible but are less likely to happen.
Innovation releases will also be Generally Available and are recommended to be used in production environments. Bugfixes and Security patches will generally be included in the next Innovation or LTS release and not as part of a patch release within that Innovation release. When using Innovation releases, it is necessary to upgrade to the latest innovation releases regularly to keep up with the latest bugfixes and security patches.
In addition to bugfixes, security patches and new features, Innovation releases will introduce new deprecations, removal of features, and even behavior changes. To reduce the risk and complexity of upgrading when such changes are introduced, policies and best practices on when and how will be put in place.
Deprecation & Removal of Features
In previous releases of MySQL, deprecations in one release (e.g., 5.7) meant that the feature could be removed in the next major/minor release (e.g., 8.0). With the introduction of Innovation releases, there will be a lot more major/minor versions, and as a result of that, when deprecations and removals can happen will change.
When a feature or behavior is deprecated in a release (e.g., 9.2 Innovation), the feature cannot be removed for at least one year (until 9.6 Innovation). This is to give users time to modify database deployments when they are running Innovation releases.
Note that there are no removals within an LTS release. Features can be removed (& added) only in the first LTS release (e.g., 8.4.0 LTS) but not later.
As we transition into the new model and move towards the first 8.x LTS release, expect an increase in deprecations and removals.
Behavior Changes
Apart from new features in Innovation releases, behavior changes are also to be expected as code gets refactored or when MySQL is modified to behave more in line with SQL Standards (this will not happen within an LTS release).
Behavior changes can have a big impact, especially when dealing with anything application related, such as SQL Syntax, new reserved words, query execution, or even query performance. Behavior changes might require application changes which can be a considerable effort for our users to migrate.
In addition to documenting each behavior change, it is important that our users are provided with the necessary tools and configuration settings to make it possible and easy to upgrade and downgrade between versions. Different approaches will be used depending on the type of behavior change. More details will come as we introduce such changes.
Long Term Supported Releases
About every 2 years, a minor version will be designated as Long Term Supported release. This version will have a 5 year premier and 3 year extended support, the same as the previously supported releases. This is similar to MySQL 5.7 and previous releases.
The LTS will also be the last version of the major release. The next (Innovation) release will increase it's major version. For example if MySQL 8.4.0 is the 8.x LTS release, then MySQL 9.0 will be the next Innovation release.
Upgrading & Downgrading
With the increased cadence of major & minor Innovation releases and LTS releases every 2 years, users will have more supported versions to choose from. Being an adopter of the Innovation series will require frequent updates to follow the bugfixes and security patches and that requires upgrade and downgrade policies.
Let's have a more in-depth look into the various upgrade & downgrade scenarios that will be supported.
Upgrading & Downgrading within an LTS release
Within an LTS release, functionality remains the same and data format does not change.
Therefore:
- In-place upgrades and downgrades will be possible. This is an improvement compared to MySQL 8.0.x releases (< 8.0.34) where downgrades were not possible and upgrade by skipping versions were not recommended.
- InnoDB CLONE will be supported within an LTS release, both for upgrading and downgrading.
Some more work is needed to fully transition to this and will come in a release after 8.0.34.
Upgrading & Downgrading from one LTS to another LTS
- It will be possible to migrate from one LTS release to the next LTS release without having to perform several intermediate steps of upgrading Innovation releases.
- Upgrading will be possible through in-place upgrades, MySQL Shell Dump & Load and MySQL asynchronous replication.
- Downgrades will be possible through MySQL Shell Dump & Load and MySQL replication for the sole purpose of rolling back an in-progress upgrade, more below.
Upgrading & Downgrading between Innovation releases
- In-place upgrades from one Innovation or LTS release to a future Innovation release will be supported, up until the next LTS release. replication and dump & load will also work.
- Downgrading will require a logical dump & load. This is similar to MySQL 8.0.x (< 8.0.34).
Upgrading & Downgrading with MySQL asynchronous replication
Upgrades on business critical environments are often done using MySQL asynchronous replication, where a new version environment is setup as replica of the current version. This allows for a near zero downtime upgrade.
It will be possible to replicate from an LTS or Innovation release to
- the next LTS release
- any future Innovation release up until the next LTS release (LTS 8.4 → LTS 9.7, but not LTS 8.4 → LTS 10.7)
In case any problems happen after promoting the new version, support to replicate back to the previous version is important. Therefore MySQL asynchronous replication will be able to replicate to previous versions. This support would be for rollback purposes only, where new functionality is not yet used, and shouldn't be considered part of a regular continuous production deployment.
Upgrade & Downgrade Support Matrix
Here's an overview of the various supported methods of upgrading and downgrading
Upgrade
|
In-Place |
CLONE |
Async replication |
Dump/Load |
|
|
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 |
✗ |
✗ |
✗ |
✗ |
Downgrade
|
In-Place |
CLONE |
Async replication |
Dump/Load |
|
|
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 |
✗ |
✗ |
✓✮ |
✓✮ |
(✮) indicates support is limited for rollback purposes only.
Conclusion
As we transition to this new model, we welcome you to engage with our Community channel and our Support team.
You can download the latest MySQL releases at mysql.com/downloads or use Oracle Software Delivery Cloud on http://edelivery.oracle.com/ to download MySQL Enterprise binaries.
For detailed information about each release, including new features, improvements, bug fixes, and possible breaking changes, check the MySQL Release Notes.
In addition to 8.0, MySQL HeatWave database service now provides the latest MySQL 8.1 Innovation release. This includes the latest features, including OLTP, OLAP, machine learning, and Lakehouse. For a free trial account, visit 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.
[转帖]MySQL的版本情况的更多相关文章
- [转帖]Mysql各版本介绍及下载
Mysql各版本介绍及下载 http://blog.itpub.net/12679300/viewspace-1251661/ 原创 MySQL 作者:wzq609 时间:2014-08-15 10: ...
- mysql不同版本和存储引擎选型的验证
Mysql的版本和存储引擎较多,为了选择最适合业务使用的系统,需要进行一定的验证,本文描述mysql的验证过程和思路. 主要涉及: Mysql的版本 v Mariadb v Tokudb v Orac ...
- mysql各版本区别
MySQL 的官网下载地址:http://www.mysql.com/downloads/ 在这个下载界面会有几个版本的选择. 1. MySQL Community Server 社区版本,开源免费, ...
- 【Mysql】Mysql 各个版本区别
一.Mysql 各个版本区别: 1.MySQL Community Server 社区版本,开源免费,但不提供官方技术支持.这也是我们通常用的MySQL的版本.根据不同的操作系统平台细分为多个版本 2 ...
- MySQL多版本并发控制机制(MVCC)-源码浅析
MySQL多版本并发控制机制(MVCC)-源码浅析 前言 作为一个数据库爱好者,自己动手写过简单的SQL解析器以及存储引擎,但感觉还是不够过瘾.<<事务处理-概念与技术>>诚然 ...
- Mysql数据库版本高低引起的group by问题
低版本的Mysql,group by限制性比较小,在进行group by时,select的对象可包含多个,但是换成高版本5.6以上好像,使用group by 以后,select的对象必须也已经被聚合, ...
- 查看mysql数据库版本方法总结
当你接手某个mysql数据库管理时,首先你需要查看维护的mysql数据库版本:当开发人员问你mysql数据库版本时,而恰好你又遗忘了,那么此时也需要去查看mysql数据库的版本............ ...
- MySQL各版本的区别
文章出自:http://blog.sina.com.cn/s/blog_62b37bfe0101he5t.html 感谢作者的分享 MySQL 的官网下载地址:http://www.mysql.com ...
- RDS MySQL 连接数满情况的处理
RDS MySQL 连接数满情况的处理 RDS MySQL 连接数满有2种情况 1. 空闲连接过多 原因: 应用使用长连接模式 - 对于长连接模式(比如Java应用),应用侧应该配置连接池.连接池的初 ...
- 10301 MySQL各个版本区别及下载
参考:http://www.admin10000.com/document/62.html MySQL 的官网下载地址:http://www.mysql.com/downloads/ 在这个下载界面会 ...
随机推荐
- 春秋云镜 - CVE-2022-28060
Victor CMS v1.0 /includes/login.php 存在sql注入 找到页面的登录框,看介绍应该是post类型的表单注入. 上sqlmap用原本的梭发现ctf的那个表是空的,换用- ...
- OpenEuler22.03安装最新版本Docker
一.环境及问题 操作系统环境如下: 操作系统:OpenEuler 22.03 LTS 安装方式:最小化安装 在操作系统安装完毕如果直接采用dnf或者yum方式安装docker: sudo dnf in ...
- 一款便捷操作移动端设备的PC工具
说明 该项目基于[Tinyui]框架开发.为电脑端(Windows/MacOS/Linux)操作移动设备提供便捷操作的工具. 项目代码已开源:☞ Github ☜ ☞ Gitee ☜ 功能 运行 由于 ...
- 打造 VSCode 高效 C++ 开发环境的必备插件
工欲善其事,必先利其器 C++ clangd:代码补全.跳转.clang-tidy 检查,自带 clang-format CodeLLDB:LLVM 的调试器(类比 GDB) CMake CMake ...
- 聊聊LiteOS事件模块的结构体、初始化及常用操作
摘要:本文通过分析LiteOS事件模块的源码,深入掌握事件的使用. 事件(Event)是一种任务间通信的机制,可用于任务间的同步.多任务环境下,任务之间往往需要同步操作,一个等待即是一个同步.事件可以 ...
- 想了解Python中的super 函数么
摘要:经常有朋友问,学 Python 面向对象时,翻阅别人代码,会发现一个 super() 函数,那这个函数的作用到底是什么? 本文分享自华为云社区<Python 中的 super 函数怎么学, ...
- Axure Axhub Charts 数据编辑、显示
Axhub Charts图表元件库: https://www.axureshop.com/a/100749.html
- Jenkins Pipeline 流水线 - 声明式 Demo
Jenkins Pipeline 流水线 流水线既能作为任务的本身,也能作为 Jenkinsfile 使用流水线可以让我们的任务从UI手动操作,转换为代码化,像dockerfile 一样.从shell ...
- Intellij idea 生成带注释的get/set
自带的 Alt+ Insert 中的 Getter and Setter 生成的属性,不能将 private 字段中的注释带过去,比较尴尬.可以通过两种试. 1. 修改模板:这种方法不能得到 pri ...
- Spring Boot JWT 用户认证
JWT token验证后,通过 ThreadLocal 进行传值 https://jwt.io/#debugger 官网提供的 JAVA 工具还是挺多的,选了个 Star 比较多的 https://g ...