MySQL 版本模型分为两个主要路线:LTS(长期支持)和创新。所有 LTS 和创新版本都包含错误和安全修复,并被视为生产级质量。
目标受众
:如果您的环境需要稳定的功能集和更长的支持期限。行为
:这些版本只包含必要的修复,以降低数据库软件行为变化相关的风险。LTS 版本中不会出现删除。功能只能在第一个 LTS 版本(例如 8.4.0 LTS)中删除(和添加),但之后不能删除。支持
:LTS 系列遵循Oracle 生命周期支持策略,包括 5 年的优质支持和 3 年的扩展支持。
目标受众
:如果您希望获得最新的功能、改进和更改。这些版本非常适合在快速发展的开发环境中工作的开发人员和 DBA,这些环境具有高水平的自动化测试和现代持续集成技术,以实现更快的升级周期。行为
:除了创新版本中的新功能之外,还应预期行为变化,因为代码被重构,弃用的功能被删除,以及当 MySQL 被修改以更符合 SQL 标准时。这不会在 LTS 版本中发生。行为变化可能会产生重大影响,尤其是在处理与应用程序相关的任何事项时,例如 SQL 语法、新的保留字、查询执行和查询性能。行为变化可能需要应用程序更改,这可能涉及大量的迁移工作。我们打算提供必要的工具和配置设置,以使这些过渡更加容易。
支持
:创新版本支持到下一个创新版本为止。
MySQL 服务器、MySQL Shell、MySQL 路由器、MySQL Kubernetes 运算符和 MySQL NDB 集群都具有创新和 LTS 版本。
MySQL 连接器使用最新的版本号发布一个版本,但与所有受支持的 MySQL 服务器版本兼容。例如,MySQL Connector/Python 9.0.0 与 MySQL 服务器 8.0、8.4 和 9.0 兼容。
拥有两个路线会影响 MySQL 的安装、升级和降级方式。通常,您选择一个特定的路线,所有升级都将相应地进行。
使用官方 MySQL 存储库时,所需路线在存储库配置中定义。例如,使用Yum 时,选择mysql-innovation-community
来安装和升级创新版本,或选择mysql-8.4-lts-community
来安装和升级 MySQL 8.4.x 版本。
LTS 说明
功能保持不变,数据格式在LTS 系列中不会发生变化,因此在 LTS 系列中可以进行就地升级和降级。例如,MySQL 8.4.0 可以升级到更高版本的 MySQL 8.4.x 版本。还可以使用其他升级和降级方法,例如克隆插件。
升级到下一个LTS 系列是支持的,例如 8.4.x LTS 到 9.7.x LTS,而跳过 LTS 系列是不支持的。例如,8.4.x LTS 不能跳过 9.7.x LTS 直接升级到 10.7.x LTS。
创新说明
创新安装遵循类似的行为,即创新版本升级到更近期的创新系列版本。例如,MySQL 9.0.0 创新会升级到 MySQL 9.3.0。
主要区别在于,您不能直接在不同主要版本的创新系列之间进行升级,例如 8.3.0 到 9.0.0。相反,首先升级到最近的 LTS 系列,然后升级到下一个创新系列。例如,将 8.3.0 升级到 8.4.0,然后将 8.4.0 升级到 9.0.0,是一个有效的升级路径。
为了使过渡更加容易,官方 MySQL 存储库将第一个 LTS 版本视为 LTS 和创新,因此,例如,在您的本地存储库配置中启用创新路线时,MySQL 8.3.0 升级到 8.4.0,然后升级到 9.0.0。
创新版本降级需要进行逻辑转储和加载。
其他信息和示例
有关其他信息和特定示例支持的场景,请参阅第 3.2 节,“升级路径”或第 4 章,降级 MySQL。它们描述了用于执行就地更新(用最新包替换二进制文件)的可用选项,逻辑转储和加载(例如,使用mysqldump或MySQL Shell 的转储实用程序),使用克隆插件克隆数据,以及异步复制,用于复制拓扑中的服务器。