Documentation Home
MySQL 8.0 参考手册  / 第 2 章安装和升级 MySQL  / 2.5 在 Linux 上安装 MySQL  /  2.5.1 使用 MySQL Yum 存储库在 Linux 上安装 MySQL

2.5.1 使用 MySQL Yum 存储库在 Linux 上安装 MySQL

用于 Oracle Linux、Red Hat Enterprise Linux 和 CentOS的MySQL Yum 存储库提供了用于安装 MySQL 服务器、客户端、MySQL Workbench、MySQL Utilities、MySQL Router、MySQL Shell、Connector/ODBC、Connector/Python 等的 RPM 包(不是所有的包可用于所有发行版;有关详细信息,请参阅 使用 Yum 安装其他 MySQL 产品和组件)。

在你开始之前

作为一种流行的开源软件,MySQL以其原始或重新打包的形式被广泛安装在许多系统上,来源多种多样,包括不同的软件下载站点、软件存储库等。以下说明假定 MySQL 尚未使用第三方分发的 RPM 软件包安装在您的系统上;如果不是这种情况,请按照 第 2.11.5 节“使用 MySQL Yum 存储库升级 MySQL”第 2.5.2 节“使用 MySQL Yum 存储库替换 MySQL 的第三方分发”中给出的说明进行操作。

全新安装 MySQL 的步骤

按照以下步骤使用 MySQL Yum 存储库安装最新的 MySQL GA 版本:

  1. 添加 MySQL Yum 存储库

    首先,将 MySQL Yum 存储库添加到系统的存储库列表中。这是一次性的操作,可以通过安装MySQL提供的RPM来完成。按着这些次序:

    1. 转到 MySQL 开发人员专区中的下载 MySQL Yum 存储库页面 ( https://mysql.net.cn/downloads/repo/yum/ )。

    2. 选择并下载适用于您的平台的发布包。

    3. 使用以下命令安装下载的发布包,替换 platform-and-version-specific-package-name 为下载的 RPM 包的名称:

      $> sudo yum localinstall platform-and-version-specific-package-name.rpm

      对于基于 EL6 的系统,命令的形式为:

      $> sudo yum localinstall mysql57-community-release-el6-{version-number}.noarch.rpm

      对于基于 EL7 的系统:

      $> sudo yum localinstall mysql57-community-release-el7-{version-number}.noarch.rpm

      对于基于 EL8 的系统:

      $> sudo yum localinstall mysql57-community-release-el8-{version-number}.noarch.rpm

      对于软呢帽:

      MySQL 5.7 不支持 Fedora;MySQL 5.7.30 中删除了支持。有关详细信息,请参阅 MySQL 产品支持 EOL 公告

      安装命令将 MySQL Yum 存储库添加到系统的存储库列表中,并下载 GnuPG 密钥以检查软件包的完整性。有关GnuPG 密钥检查的详细信息, 请参阅 第 2.1.4.2 节 “使用 GnuPG 进行签名检查” 。

      可以通过以下命令查看MySQL Yum仓库是否添加成功:

      $> yum repolist enabled | grep "mysql.*-community.*"
    笔记

    一旦在您的系统上启用了 MySQL Yum 存储库,通过yum update 命令进行的任何系统范围的更新都会升级您系统上的 MySQL 包并替换任何本地第三方包,如果 Yum 在 MySQL Yum 存储库中找到它们的替代品;请参阅 第 2.11.5 节,“使用 MySQL Yum 存储库升级 MySQL”,有关这对您系统的一些可能影响的讨论,请参阅 升级共享客户端库

  2. 选择发布系列

    使用MySQL Yum仓库时,默认选择最新的GA系列(目前是MySQL 5.7)进行安装。如果这是您想要的,您可以跳到下一步, 安装 MySQL

    在 MySQL Yum 存储库中,MySQL Community Server 的不同版本系列托管在不同的子存储库中。最新GA系列(目前MySQL 5.7)的子库默认开启,其他所有系列(如MySQL 5.6系列)的子库默认关闭。使用此命令查看 MySQL Yum 存储库中的所有子存储库,并查看其中哪些已启用或已禁用:

    $> yum repolist all | grep mysql

    要安装最新 GA 系列的最新版本,无需配置。要安装最新 GA 系列以外的特定系列的最新版本,请在运行安装命令之前禁用最新 GA 系列的子存储库并启用特定系列的子存储库。如果您的平台支持 yum-config-manager,您可以通过发出这些命令来实现,这些命令禁用 5.7 系列的子存储库并启用 5.6 系列的子存储库:

    $> sudo yum-config-manager --disable mysql57-community
    $> sudo yum-config-manager --enable mysql56-community

    对于 Fedora 平台:

    $> sudo dnf config-manager --disable mysql57-community
    $> sudo dnf config-manager --enable mysql56-community

    除了使用yum-config-managerdnf config-manager命令外,您还可以通过手动编辑 /etc/yum.repos.d/mysql-community.repo 文件来选择发布系列。这是文件中发布系列子存储库的典型条目:

    [mysql57-community]
    name=MySQL 5.7 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

    找到您要配置的子存储库的条目,然后编辑该enabled选项。指定 enabled=0禁用子存储库或 enabled=1启用子存储库。例如,要安装 MySQL 5.6,请确保您拥有 enabled=0MySQL 5.7 的上述子存储库条目,以及enabled=15.6 系列的条目:

    # Enable to use MySQL 5.6
    [mysql56-community]
    name=MySQL 5.6 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

    您应该在任何时候只为一个发布系列启用子存储库。当启用多个发布系列的子存储库时,Yum 使用最新的系列。

    通过运行以下命令并检查其输出来验证是否已启用和禁用了正确的子存储库:

    $> yum repolist enabled | grep mysql
  3. 禁用默认的 MySQL 模块

    (仅限 EL8 系统)基于 EL8 的系统(例如 RHEL8 和 Oracle Linux 8)包括默认启用的 MySQL 模块。除非禁用此模块,否则它会屏蔽 MySQL 存储库提供的包。要禁用包含的模块并使 MySQL 存储库包可见,请使用以下命令(对于启用 dnf 的系统, 将命令中的 yum替换为dnf):

    $> sudo yum module disable mysql
  4. 安装 MySQL

    通过以下命令安装 MySQL:

    $> sudo yum install mysql-community-server

    这将安装 MySQL 服务器包 ( mysql-community-server) 以及运行服务器所需组件的包,包括客户端包 ( mysql-community-client)、客户端和服务器的常见错误消息和字符集 ( mysql-community-common) 以及共享客户端库 ( mysql-community-libs) .

  5. 启动 MySQL 服务器

    使用以下命令启动 MySQL 服务器:

    $> sudo service mysqld start
    Starting mysqld:[ OK ]

    您可以使用以下命令检查 MySQL 服务器的状态:

    $> sudo service mysqld status
    mysqld (pid 3066) is running.

在服务器的初始启动时,如果服务器的数据目录为空,则会发生以下情况:

  • 服务器已初始化。

  • SSL 证书和密钥文件在数据目录中生成。

  • validate_password 已安装并启用。

  • 创建一个超级用户帐户'root'@'localhost。超级用户的密码已设置并存储在错误日志文件中。要显示它,请使用以下命令:

    $> sudo grep 'temporary password' /var/log/mysqld.log

    通过使用生成的临时密码登录并为超级用户帐户设置自定义密码,尽快更改 root 密码:

    $> mysql -uroot -p
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
    笔记

    validate_password 默认安装。实现的默认密码策略validate_password要求密码至少包含1个大写字母、1个小写字母、1个数字和1个特殊字符,密码总长度至少为8个字符。

有关安装后过程的更多信息,请参阅 第 2.10 节 “安装后设置和测试”

笔记

基于 EL7 的平台的兼容性信息:来自平台本机软件存储库的以下 RPM 包与安装 MySQL 服务器的 MySQL Yum 存储库中的包不兼容。一旦使用 MySQL Yum 存储库安装了 MySQL,就无法安装这些包(反之亦然)。

  • akonadi-mysql

使用 Yum 安装其他 MySQL 产品和组件

您可以使用 Yum 安装和管理 MySQL 的各个组件。其中一些组件托管在 MySQL Yum 存储库的子存储库中:例如,MySQL Connectors 位于 MySQL Connectors Community 子存储库中,而 MySQL Workbench 位于 MySQL Tools Community 中。您可以使用以下命令从 MySQL Yum 存储库中列出适用于您的平台的所有 MySQL 组件的包:

$> sudo yum --disablerepo=\* --enablerepo='mysql*-community*' list available

使用以下命令安装您选择的任何包,替换package-name为包的名称:

$> sudo yum install package-name

例如,要在 Fedora 上安装 MySQL Workbench:

$> sudo dnf install mysql-workbench-community

安装共享客户端库:

$> sudo yum install mysql-community-libs

使用 Yum 更新 MySQL

除了安装之外,您还可以使用 MySQL Yum 存储库对 MySQL 产品和组件执行更新。有关详细信息,请参阅 第 2.11.5 节 “使用 MySQL Yum 存储库升级 MySQL”