文档主页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9MB
PDF (A4) - 40.0MB
手册页 (TGZ) - 258.5KB
手册页 (Zip) - 365.5KB
信息 (Gzip) - 4.0MB
信息 (Zip) - 4.0MB


MySQL 8.4 参考手册  /  安装 MySQL  /  使用通用二进制文件在 Unix/Linux 上安装 MySQL

2.2 使用通用二进制文件在 Unix/Linux 上安装 MySQL

Oracle 提供了一组 MySQL 的二进制发行版。其中包括针对许多平台的压缩 tar 文件(扩展名为 .tar.xz 的文件)形式的通用二进制发行版,以及针对所选平台的特定于平台的软件包格式的二进制文件。

本节介绍如何从 Unix/Linux 平台上的压缩 tar 文件二进制发行版安装 MySQL。有关重点介绍 MySQL 安全功能的 Linux 通用二进制发行版安装说明,请参阅《安全部署指南》。有关其他特定于平台的二进制包格式,请参阅本手册中其他特定于平台的部分。例如,有关 Windows 发行版的更多信息,请参阅第 2.3 节,“在 Microsoft Windows 上安装 MySQL”。有关如何获取不同发行格式的 MySQL 的信息,请参阅第 2.1.3 节,“如何获取 MySQL”

MySQL 压缩 tar 文件二进制发行版的名称格式为 mysql-VERSION-OS.tar.xz,其中 VERSION 是一个数字(例如,8.4.0),OS 表示发行版适用的操作系统类型(例如,pc-linux-i686winx64)。

还有一个针对 Linux 通用二进制发行版的 MySQL 压缩 tar 文件的“最小安装版本,其名称格式为 mysql-VERSION-OS-GLIBCVER-ARCH-minimal.tar.xz。最小安装发行版不包括调试二进制文件,并且剥离了调试符号,因此它比常规二进制发行版小得多。如果您选择安装最小安装发行版,请记住在以下说明中调整文件名格式的差异。

警告
  • 如果您之前使用操作系统原生软件包管理系统(如 Yum 或 APT)安装了 MySQL,则在使用原生二进制文件安装时可能会遇到问题。请确保已完全删除以前的 MySQL 安装(使用您的软件包管理系统),并且还删除了任何其他文件,例如旧版本的数据文件。您还应该检查配置文件(如 /etc/my.cnf/etc/mysql 目录)并将其删除。

    有关使用官方 MySQL 软件包替换第三方软件包的信息,请参阅替换 MySQL 的原生第三方发行版使用 MySQL APT 存储库替换 MySQL 的原生发行版

  • MySQL 依赖于 libaio 库。如果本地未安装此库,则数据目录初始化和后续服务器启动步骤将失败。如有必要,请使用适当的软件包管理器安装它。例如,在基于 Yum 的系统上

    $> yum search libaio  # search for info
    $> yum install libaio # install library

    或者,在基于 APT 的系统上

    $> apt-cache search libaio # search for info
    $> apt-get install libaio1 # install library
  • Oracle Linux 8 / Red Hat 8 (EL8):默认情况下,这些平台不安装 MySQL 客户端 bin/mysql 所需的文件 /lib64/libtinfo.so.5(用于软件包 mysql-VERSION-el7-x86_64.tar.gzmysql-VERSION-linux-glibc2.12-x86_64.tar.xz)。要解决此问题,请安装 ncurses-compat-libs 软件包

    $> yum install ncurses-compat-libs
  • 如果 Oracle(或您的 Linux 供应商)没有提供特定于您的发行版的 RPM 或 .deb 文件,则可以尝试使用通用二进制文件。在某些情况下,由于库不兼容或其他问题,这些文件可能无法与您的 Linux 安装一起使用。在这种情况下,您可以尝试从源代码编译和安装 MySQL。有关更多信息和说明,请参阅第 2.8 节,“从源代码安装 MySQL”

要安装压缩的 tar 文件二进制发行版,请在您选择的安装位置(通常为 /usr/local/mysql)将其解压缩。这将创建下表所示的目录。

表 2.3 通用 Unix/Linux 二进制包的 MySQL 安装布局

目录 目录内容
bin mysqld 服务器、客户端和实用程序
docs Info 格式的 MySQL 手册
man Unix 手册页
include 包含(头)文件
lib
share 数据库安装的错误消息、字典和 SQL
support-files 其他支持文件

mysqld 二进制文件的调试版本可作为 mysqld-debug 使用。要从源代码发行版编译您自己的 MySQL 调试版本,请使用适当的配置选项来启用调试支持。有关更多信息,请参阅第 2.8 节,“从源代码安装 MySQL”

要安装和使用 MySQL 二进制发行版,命令序列如下所示

$> groupadd mysql
$> useradd -r -g mysql -s /bin/false mysql
$> cd /usr/local
$> tar xvf /path/to/mysql-VERSION-OS.tar.xz
$> ln -s full-path-to-mysql-VERSION-OS mysql
$> cd mysql
$> mkdir mysql-files
$> chown mysql:mysql mysql-files
$> chmod 750 mysql-files
$> bin/mysqld --initialize --user=mysql
$> bin/mysqld_safe --user=mysql &
# Next command is optional
$> cp support-files/mysql.server /etc/init.d/mysql.server
注意

此过程假设您拥有系统的 root(管理员)访问权限。或者,您可以使用 sudo (Linux) 或 pfexec (Solaris) 命令作为每个命令的前缀。

mysql-files 目录提供了一个方便的位置,可用作 secure_file_priv 系统变量的值,该变量将导入和导出操作限制到特定目录。有关更多信息,请参阅第 7.1.8 节,“服务器系统变量”

下面是安装二进制发行版的前面描述的更详细版本。

创建 mysql 用户和组

如果您的系统中还没有用于运行 mysqld 的用户和组,您可能需要创建它们。以下命令将添加 mysql 组和 mysql 用户。您可能希望将用户和组命名为 mysql 以外的其他名称。如果是这样,请在以下说明中替换相应的名称。useraddgroupadd 的语法在不同版本的 Unix/Linux 上可能略有不同,或者它们可能有不同的名称,例如 adduseraddgroup

$> groupadd mysql
$> useradd -r -g mysql -s /bin/false mysql
注意

由于该用户仅用于所有权目的,而不用于登录目的,因此 useradd 命令使用 -r-s /bin/false 选项来创建一个没有登录服务器主机权限的用户。如果您的 useradd 不支持这些选项,请省略它们。

获取并解压缩发行版

选择要将发行版解压缩到的目录,并将位置更改到该目录。此处的示例将发行版解压缩到 /usr/local 下。因此,这些说明假定您有权在 /usr/local 中创建文件和目录。如果该目录受保护,则必须以 root 身份执行安装。

$> cd /usr/local

使用 第 2.1.3 节“如何获取 MySQL” 中的说明获取发行版文件。对于给定的版本,所有平台的二进制发行版都是从相同的 MySQL 源代码发行版构建的。

解压缩发行版,这将创建安装目录。tar 如果支持 z 选项,则可以解压缩发行版

$> tar xvf /path/to/mysql-VERSION-OS.tar.xz

tar 命令将创建一个名为 mysql-VERSION-OS 的目录。

要从压缩的 tar 文件二进制发行版安装 MySQL,您的系统必须具有 GNU XZ Utils 来解压缩发行版,并且必须具有合理的 tar 来解压缩它。

已知 GNU tar 可以正常工作。某些操作系统提供的标准 tar 无法解压缩 MySQL 发行版中的长文件名。您应该下载并安装 GNU tar,或者如果可用,请使用预安装的 GNU tar 版本。通常,它可以作为 gnutargtar 或 GNU 或自由软件目录(例如 /usr/sfw/bin/usr/local/bin)中的 tar 获得。GNU tar 可以从 http://www.gnu.org/software/tar/ 获取。

如果您的 tar 不支持 xz 格式,请使用 xz 命令解压缩发行版,然后使用 tar 解压缩它。将前面的 tar 命令替换为以下替代命令,以解压缩和提取发行版

$> xz -dc /path/to/mysql-VERSION-OS.tar.xz | tar x

接下来,创建指向 tar 创建的安装目录的符号链接

$> ln -s full-path-to-mysql-VERSION-OS mysql

ln 命令创建一个指向安装目录的符号链接。这使您可以更轻松地将其称为 /usr/local/mysql。为了避免在使用 MySQL 时始终输入客户端程序的路径名,您可以将 /usr/local/mysql/bin 目录添加到您的 PATH 变量中

$> export PATH=$PATH:/usr/local/mysql/bin

执行安装后设置

安装过程的其余部分包括设置发行版所有权和访问权限、初始化数据目录、启动 MySQL 服务器以及设置配置文件。有关说明,请参见 第 2.9 节“安装后设置和测试”