MySQL 8.4 Reference Manual  /  Upgrading MySQL  /  Upgrading MySQL with the MySQL Yum Repository

3.8 使用 MySQL Yum 仓库升级 MySQL

对于支持 Yum 的平台(见第 2.5.1 节,“使用 MySQL Yum 仓库安装 MySQL”),您可以使用 MySQL Yum 仓库对 MySQL 进行 in-place 升级(即将旧版本替换为新版本,然后使用旧数据文件运行新版本)。

Notes
  1. 默认情况下,MySQL Yum 仓库将 MySQL 更新到您在安装时选择的发布系列(见选择发布系列)中的最新版本,例如,8.0.x 安装将不会自动更新到 8.4.x 版本。要更新到另一个发布系列,您必须首先禁用默认系列的子仓库,然后启用目标系列的子仓库。要执行该操作,请按照选择发布系列中的说明编辑 /etc/yum.repos.d/mysql-community.repo 文件中的子仓库条目。

    总的来说,要从一个 bugfix 系列升级到另一个 bugfix 系列,请不要跳过 bugfix 系列。例如,如果您当前运行 MySQL 5.7 并想升级到 MySQL 8.4,首先升级到 MySQL 8.0,然后升级到 MySQL 8.4。对于详细信息,请见第 3.5 章,“MySQL 8.4 的变化”

  2. 升级 MySQL

    使用标准 yum (或 dnf) 命令升级 MySQL 组件,例如 MySQL 服务器:

    sudo yum update mysql-server

    对于支持 dnf 的平台:

    sudo dnf upgrade mysql-server

    另外,您可以通过告诉Yum更新整个系统,这可能需要更长的时间。对于非dnf启用的平台:

    sudo yum update

    对于dnf启用的平台:

    sudo dnf upgrade
    Note

    MySQL服务器总是通过Yum更新后重新启动。

您也可以只更新特定的组件。使用以下命令列出所有已安装的MySQL组件包(对于dnf启用的系统,在命令中将yum替换为dnf):

sudo yum list installed | grep "^mysql"

在选择的组件包名确定后,使用以下命令更新包,替换package-name为包名。对于非dnf启用的平台:

sudo yum update package-name

对于dnf启用的平台:

sudo dnf upgrade package-name

在使用Yum存储库更新MySQL后,使用旧版本共享客户端库编译的应用程序应该继续工作。

如果您重新编译应用程序,并使用更新的库进行动态链接:与新版本共享库的符号版本号之间存在差异或添加(例如,标准8.4共享客户端库与某些老版本或变体版本的共享库在Linux发行版的软件仓库中或来自其他来源),需要在部署应用程序的系统上安装更新的库。正如预期,如果这些库没有安装,需要这些库的应用程序将失败。因此,请在应用程序部署的系统上部署MySQL共享库的包。要做到这一点,请在系统上添加MySQL Yum存储库(见添加MySQL Yum存储库),然后使用使用Yum安装MySQL产品和组件中的指令安装最新的共享库。