MySQL 9.0 参考手册  /  升级 MySQL  /  升级最佳实践

3.3 升级最佳实践

MySQL 支持在次要版本(在 LTS 系列内)和下一个主要版本(跨 LTS 系列)之间进行升级。升级提供最新的功能、性能和安全修复。

为了准备并帮助确保您成功升级到最新的 MySQL 版本,我们建议您遵循以下最佳实践

确定升级的主要或次要版本

MySQL 版本模型区分 LTS(长期支持)和创新版本。LTS 版本拥有 8 年以上的支持,适合生产环境使用。创新版本为用户提供最新的功能和能力。了解有关 MySQL 版本模型 的更多信息。

执行次要版本升级非常简单,而主要版本升级需要在升级之前进行战略性规划和额外测试。本指南特别适用于主要版本升级。

确定升级类型

升级 MySQL 主要有三种方法,请阅读相关文档以确定哪种升级类型最适合您的情况。

查看受支持的平台

如果您的当前操作系统不受新版本 MySQL 支持,则计划升级操作系统,否则不支持就地升级。

有关受支持平台的当前列表,请参见:https://www.mysqlserver.cn/support/supportedplatforms/database.html

了解 MySQL 服务器更改

每个主要版本都附带新功能、行为更改、弃用和删除。了解这些更改对现有应用程序的影响非常重要。

请参见:第 3.5 节,“MySQL 9.0 中的更改”.

运行升级检查器并修复不兼容性

MySQL Shell 的 升级检查器实用程序 检测数据库版本之间必须在执行升级之前解决的不兼容性。 util.checkForServerUpgrade() 函数验证 MySQL 服务器实例是否已准备好升级。连接到现有的 MySQL 服务器并选择要升级到的 MySQL 服务器版本,以便实用程序在升级之前报告要解决的问题。这些问题包括数据类型、存储引擎等方面的 不兼容性。

当升级检查器不再报告任何问题时,您就可以准备升级了。

在测试环境中运行应用程序

完成升级检查器的要求后,接下来在新的目标 MySQL 服务器上测试您的应用程序。在 MySQL 错误日志和应用程序日志中检查错误和警告。

基准测试应用程序和工作负载性能

我们建议您通过比较使用以前版本和新版本 MySQL 的性能来基准测试您自己的应用程序和工作负载。通常,较新的 MySQL 版本会添加功能并提高性能,但有些情况下,升级可能会使特定查询运行速度变慢。导致性能下降的可能问题

  • 以前的服务器配置对于较新版本而言不是最佳的

  • 数据类型更改

  • 多字节字符集支持所需的额外存储空间

  • 存储引擎更改

  • 删除或更改的索引

  • 更强的加密

  • 更强的身份验证

  • SQL 优化器更改

  • 较新版本的 MySQL 需要更多内存

  • 物理或虚拟硬件速度较慢 - 计算或存储

有关相关信息和潜在的缓解技术,请参见 有效的性能下降.

并行运行两个 MySQL 版本

为了最大程度地降低风险,最好在并行运行升级后的系统的同时保持当前系统运行。

运行最终测试升级

在升级生产服务器之前进行练习和运行。在升级生产系统之前,彻底测试升级过程。

检查 MySQL 备份

在执行升级之前,请检查完整的备份是否存在并可用。

升级生产服务器

您已准备好完成升级。

企业支持

如果您是 MySQL 企业版客户,还可以联系 MySQL 支持团队专家,解答您可能遇到的任何问题。