全新安装 MySQL 的步骤
以下说明假设您的系统上尚未安装任何版本的 MySQL(无论是 Oracle 分发的还是其他方分发的);如果不是这种情况,请按照 使用 MySQL APT 仓库替换本机发行版的 MySQL 或 替换通过直接下载 deb 软件包安装的 MySQL 服务器 中提供的说明进行操作。
-
添加 MySQL APT 仓库
首先,将 MySQL APT 仓库添加到系统软件仓库列表中。请按照以下步骤操作
访问 MySQL APT 仓库的下载页面 https://dev.mysqlserver.cn/downloads/repo/apt/。
选择并下载适用于您的 Linux 发行版的发布包。
虽然这并非每次更新都必需,但它确实会更新 MySQL 仓库信息,以包括最新信息。例如,
mysql-apt-config_0.8.26-1_all.deb
是第一个添加创新发布轨道的 APT 仓库配置文件,该轨道从 MySQL 8.1 开始。使用以下命令安装下载的发布包,将
版本特定软件包名称
替换为下载的软件包名称(如果未在软件包所在的文件夹内运行命令,则在前面加上其路径)$> sudo dpkg -i /PATH/version-specific-package-name.deb
例如,对于软件包的版本
w.x.y-z
,命令为$> sudo dpkg -i mysql-apt-config_w.x.y-z_all.deb
请注意,同一个软件包适用于所有受支持的 Debian 和 Ubuntu 平台。
在安装软件包期间,系统会提示您选择要安装的 MySQL 服务器和其他组件(例如 MySQL Workbench)的版本。如果您不确定要选择哪个版本,请不要更改为您选择的默认选项。您也可以选择 无,如果您不想安装特定组件。在为所有组件做出选择后,选择 确定 以完成发布包的配置和安装。
注意从 MySQL 8.1 开始的创新轨道,在组件名称中包含 “-innovation-” 。
您始终可以更改以后的版本选择;有关说明,请参阅 选择主要版本。
使用以下命令更新 MySQL APT 仓库的软件包信息 (此步骤是强制性的)
$> sudo apt-get update
除了使用发布包之外,您还可以手动添加和配置 MySQL APT 仓库;有关详细信息,请参阅 附录 A:手动添加和配置 MySQL APT 仓库。
注意在系统上启用 MySQL APT 仓库后,您将无法从平台的本机软件仓库安装任何 MySQL 软件包,直到禁用 MySQL APT 仓库为止。
-
使用 APT 安装 MySQL
使用以下命令安装 MySQL
$> sudo apt-get install mysql-server
这将安装 MySQL 服务器的软件包,以及客户端和数据库通用文件的软件包。
在安装过程中,系统会提示您为 MySQL 安装的 root 用户提供密码。
重要请务必记住您设置的 root 密码。希望稍后设置密码的用户可以在对话框中将 密码 字段留空,只需按下 确定;在这种情况下,将通过 套接字对等凭证可插拔身份验证 对使用 Unix 套接字文件的连接进行身份验证。您可以稍后使用程序 mysql_secure_installation 设置 root 密码。
-
启动和停止 MySQL 服务器
MySQL 服务器在安装后会自动启动。您可以使用以下命令检查 MySQL 服务器的状态
$> systemctl status mysql
如果操作系统启用了 systemd,则应使用标准的 systemctl(或者,使用反转参数的 service)命令(例如 stop、start、status 和 restart)来管理 MySQL 服务器服务。
mysql
服务默认情况下是启用的,它会在系统重新启动时启动。有关更多信息,请参阅 使用 systemd 管理 MySQL 服务器。
一些依赖于本机 MySQL 软件包的第三方本机仓库软件包可能无法与 MySQL APT 仓库软件包一起使用,并且不应与它们一起使用;其中包括 akonadi-backend-mysql、handlersocket-mysql-5.5 和 zoneminder。
选择主要版本
默认情况下,MySQL 服务器和其他所需组件的所有安装和升级都来自您在安装配置软件包期间选择的主要版本的发布系列(有关说明,请参阅 添加 MySQL APT 仓库)。但是,您可以随时通过重新配置已安装的配置软件包切换到另一个受支持的主要发布系列。使用以下命令
$> sudo dpkg-reconfigure mysql-apt-config
然后,系统会弹出一个对话框,提示您选择想要的主要版本。做出选择并选择 确定。返回命令提示符后,使用以下命令更新 MySQL APT 仓库的软件包信息
$> sudo apt-get update
下次使用 apt-get install 命令时,将安装所选系列中的最新版本。
您可以使用相同的方法更改要使用 MySQL APT 仓库安装的任何其他 MySQL 组件的版本。
安装其他 MySQL 产品和组件
您可以使用 APT 从 MySQL APT 仓库安装 MySQL 的各个组件。假设您的系统仓库列表中已存在 MySQL APT 仓库(有关说明,请参阅 添加 MySQL APT 仓库),首先,使用以下命令从 MySQL APT 仓库获取最新的软件包信息
$> sudo apt-get update
使用以下命令安装您选择的任何软件包,将 软件包名称
替换为软件包名称
$> sudo apt-get install package-name
例如,要安装 MySQL Workbench
$> sudo apt-get install mysql-workbench-community
要安装共享客户端库
$> sudo apt-get install libmysqlclient21
使用 MySQL APT 仓库从源代码安装 MySQL
此功能仅在 64 位系统上受支持。
您可以下载 MySQL 的源代码并使用 MySQL APT 仓库进行构建
将 MySQL APT 仓库添加到系统仓库列表中,并选择想要的主要版本系列(有关说明,请参阅 添加 MySQL APT 仓库)。
使用以下命令更新 MySQL APT 仓库的软件包信息 (此步骤是强制性的)
$> sudo apt-get update
安装构建过程所依赖的软件包
$> sudo apt-get build-dep mysql-server
下载 MySQL 主要组件的源代码,然后构建它们(在您想要下载文件和构建所在的文件夹中运行此命令)
$> apt-get source -b mysql-server
将创建用于安装各种 MySQL 组件的
deb
软件包。选择您需要的 MySQL 组件的
deb
软件包,并使用以下命令安装它们$> sudo dpkg -i package-name.deb
请注意,MySQL 软件包之间存在依赖关系。为了基本安装 MySQL 服务器,请按照以下步骤依次安装数据库通用文件软件包、客户端软件包、客户端元软件包、服务器软件包和服务器元软件包
使用以下命令预配置 MySQL 服务器软件包
$> sudo dpkg-preconfigure mysql-community-server_version-and-platform-specific-part.deb
系统会提示您为 MySQL 安装的 root 用户提供密码;请参阅上面 使用 APT 安装 MySQL 中关于 root 密码的重要信息。您可能还会被问及有关安装的其他问题。
使用单个命令安装所需的软件包
$> sudo dpkg -i mysql-{common,community-client,client,community-server,server}_*.deb
如果 dpkg 警告您存在未满足的依赖项,则可以使用 apt-get 修复它们
sudo apt-get -f install
以下是文件在系统中的安装位置
所有配置文件(如
my.cnf
)都位于/etc/mysql
下所有二进制文件、库、头文件等都位于
/usr/bin
和/usr/sbin
下数据目录位于
/var/lib/mysql
下
另请参阅 启动和停止 MySQL 服务器 中给出的信息。
使用 MySQL APT 仓库升级 MySQL
在执行任何 MySQL 升级之前,请仔细阅读 升级 MySQL 中的说明。在其中讨论的其他说明中,在升级之前备份数据库尤其重要。
以下说明假设您的系统上已使用 MySQL APT 存储库安装了 MySQL;如果不是这样,请按照 使用 MySQL APT 存储库替换本机 MySQL 发行版 或 替换通过直接 deb 包下载安装的 MySQL 服务器 中的说明操作。另外请注意,您无法使用 MySQL APT 存储库升级从非本机软件存储库(例如,从 MariaDB 或 Percona)安装的 MySQL 发行版。
按照以下步骤,使用 MySQL APT 存储库对您的 MySQL 安装执行就地升级(即替换旧版本,然后使用旧数据文件运行新版本)。
确保您的系统存储库列表中已经包含了 MySQL APT 存储库(有关说明,请参见 添加 MySQL APT 存储库)。
运行以下命令,确保您拥有 MySQL APT 存储库中最新的包信息。
$> sudo apt-get update
请注意,默认情况下,MySQL APT 存储库会将 MySQL 更新为您在 将 MySQL APT 存储库添加到您的系统 时选择的发布系列。如果您想升级到其他发布系列,请按照 选择主要发布版本 中的步骤进行选择。
一般来说,要从一个发布系列升级到另一个发布系列,请升级到下一个系列,而不是跳过一个系列。例如,如果您当前运行的是 MySQL 5.6,并且想要升级到更新的系列,请先升级到 MySQL 5.7,然后再升级到 8.0。
重要有关从 MySQL 5.6 升级到 5.7 的重要信息,请参见 从 MySQL 5.6 升级到 5.7。
有关从 MySQL 5.7 升级到 8.0 的重要信息,请参见 从 MySQL 5.7 升级到 8.0。
MySQL APT 存储库不支持 MySQL 的就地降级。请按照 降级 MySQL 中的说明操作。
$> sudo apt-get install mysql-server
如果存在更新的版本,MySQL 服务器、客户端和数据库通用文件将被升级。要升级其他任何 MySQL 包,请使用相同的 apt-get install 命令并提供要升级的包的名称。
$> sudo apt-get install package-name
要查看从 MySQL APT 存储库安装的包的名称,请使用以下命令
$> dpkg -l | grep mysql | grep ii
注意如果您使用 apt-get upgrade 执行系统范围的升级,只有 MySQL 库和开发包将使用更新的版本(如果可用)进行升级。要升级其他组件(包括服务器、客户端、测试套件等),请使用 apt-get install 命令。
MySQL 服务器在 APT 更新后始终会重新启动。在 MySQL 8.0.16 之前,服务器重新启动后运行 mysql_upgrade 以检查并可能解决旧数据和升级后的软件之间存在的任何不兼容性。 mysql_upgrade 还会执行其他功能;有关详细信息,请参见 mysql_upgrade — 检查和升级 MySQL 表。从 MySQL 8.0.16 开始,此步骤不再需要,因为服务器会执行以前由 mysql_upgrade 处理的所有任务。
使用 MySQL APT 存储库替换本机 MySQL 发行版
MySQL 的变体和分支由不同的组织通过他们自己的软件存储库或下载网站发布。您可以通过几个步骤将从 Linux 平台的软件存储库安装的本机 MySQL 发行版替换为来自 MySQL APT 存储库的发行版。
MySQL APT 存储库只能替换由 Debian 或 Ubuntu 维护和发布的 MySQL 发行版。它不能替换在发行版的本机存储库内或外部找到的任何 MySQL 分支。要替换此类 MySQL 分支,您必须先卸载它们,然后才能使用 MySQL APT 存储库安装 MySQL。请按照分支发布者的卸载说明进行操作,并在继续操作之前确保您已备份数据,并且知道如何将它们恢复到新的服务器。
一些依赖于本机 MySQL 软件包的第三方本机仓库软件包可能无法与 MySQL APT 仓库软件包一起使用,并且不应与它们一起使用;其中包括 akonadi-backend-mysql、handlersocket-mysql-5.5 和 zoneminder。
-
备份您的数据库
为了避免数据丢失,请务必在尝试使用 MySQL APT 存储库替换您的 MySQL 安装之前备份您的数据库。有关说明,请参见 备份和恢复。
-
添加 MySQL APT 存储库并选择发布系列
按照 添加 MySQL APT 存储库 中的说明,将 MySQL APT 存储库添加到您的系统存储库列表,并选择所需的发布系列。
-
通过 APT 更新替换本机发行版
根据设计,当您对 MySQL 包执行升级时,MySQL APT 存储库会替换您的本机 MySQL 发行版。要执行升级,请按照 步骤 4 中 使用 MySQL APT 存储库升级 MySQL 中提供的相同说明操作。
使用 MySQL APT 存储库替换本机 MySQL 发行版后,使用 apt-get purge、apt-get remove --purge 或 dpkg -P 命令从本机存储库中清除旧的 MySQL 包可能会以各种方式影响新安装的 MySQL 服务器。因此,请勿清除本机存储库包中的旧 MySQL 包。
替换通过直接 deb
包下载安装的 MySQL 服务器
用于安装 MySQL 服务器及其组件的 MySQL deb
包可以从 MySQL Developer Zone 的 MySQL 下载页面 或从 MySQL APT 存储库下载。这两个来源的 deb
包不同,它们以不同的方式安装和配置 MySQL。
如果您使用 MySQL Developer Zone 的 deb
包安装了 MySQL,现在想要使用来自 MySQL APT 存储库的包替换安装,请按照以下步骤操作
备份您的数据库。有关说明,请参见 备份和恢复。
按照前面针对 添加 MySQL APT 存储库 给出的步骤操作。
通过运行以下命令删除旧的 MySQL 安装
$> sudo dpkg -P mysql
从 MySQL APT 存储库安装 MySQL
$> sudo apt-get install mysql-server
如果需要,将数据恢复到新的 MySQL 安装。有关说明,请参见 备份和恢复。
使用 APT 移除 MySQL
要卸载使用 MySQL APT 存储库安装的 MySQL 服务器及其相关组件,请先使用以下命令移除 MySQL 服务器
$> sudo apt-get remove mysql-server
然后,移除与 MySQL 服务器一起自动安装的任何其他软件
$> sudo apt-get autoremove
要卸载其他组件,请使用以下命令,将 package-name
替换为要移除的组件的包名
$> sudo apt-get remove package-name
要查看从 MySQL APT 存储库安装的包列表,请使用以下命令
$> dpkg -l | grep mysql | grep ii
关于升级共享客户端库的特别说明
您可以通过以下命令从 MySQL APT 存储库安装共享客户端库(有关详细信息,请参见 使用 APT 安装其他 MySQL 产品和组件)。
$> sudo apt-get install libmysqlclient21
如果您已经从 Linux 平台的软件存储库安装了共享客户端库,可以使用相同的命令将其更新为 MySQL APT 存储库中的自己的包(有关详细信息,请参见 通过 APT 更新替换本机发行版)。
使用 APT 存储库更新 MySQL 后,使用旧版本的共享客户端库编译的应用程序应继续工作。
如果您重新编译应用程序并使用更新的库动态链接它们: 与共享库的新版本一样,使用更新的、较新的共享库编译的任何应用程序可能需要这些更新的库才能在部署应用程序的系统上运行。如果这些库不存在,则需要共享库的应用程序可能会失败。因此,建议将来自 MySQL 的共享库包部署到这些系统。您可以通过将 MySQL APT 存储库添加到系统(参见 添加 MySQL APT 存储库)并使用本节开头给出的命令安装最新的共享客户端库来实现这一点。
使用 APT 存储库安装 MySQL NDB Cluster
MySQL APT 存储库支持在 Debian 和 Ubuntu 系统上安装 MySQL NDB Cluster。有关在其他基于 Debian 的系统上安装 NDB Cluster 的方法,请参见 使用 .deb 文件安装 NDB Cluster。
如果您已经在系统上安装了 MySQL 服务器或 MySQL NDB Cluster,请确保它已停止,并且您已备份数据和配置文件,然后再继续操作。
-
添加用于 MySQL NDB Cluster 的 MySQL APT 存储库
按照 添加 MySQL APT 存储库 中的步骤,将 MySQL APT 存储库添加到您的系统存储库列表。在配置包的安装过程中,当询问您要配置哪个 MySQL 产品时,请选择 “MySQL 服务器和集群”;当询问您希望接收哪个版本时,请选择 “mysql-cluster-
x
.y
.” 返回命令提示符后,请转到下面的步骤 2。如果您已经在系统上安装了配置包,请通过运行以下命令确保它是最新的
$> sudo apt-get install mysql-apt-config
然后,使用 选择主要发布版本 中描述的相同方法选择要安装的 MySQL NDB Cluster。当询问您要配置哪个 MySQL 产品时,请选择 “MySQL 服务器和集群”;当询问您希望接收哪个版本时,请选择 “mysql-cluster-
x
.y
.” 返回命令提示符后,使用此命令更新 MySQL APT 存储库中的包信息$> sudo apt-get update
-
安装 MySQL NDB Cluster
要进行 MySQL NDB Cluster 的最小安装,请按照以下步骤操作
$> sudo apt-get install mysql-cluster-community-server
系统会要求您为 SQL 节点的 root 用户提供密码;有关 root 密码的重要信息,请参见上面 使用 APT 安装 MySQL 中的说明。系统还可能询问您有关安装的其他问题。
安装管理节点的可执行文件
$> sudo apt-get install mysql-cluster-community-management-server
安装数据节点的可执行文件
$> sudo apt-get install mysql-cluster-community-data-node
-
配置和启动 MySQL NDB Cluster
请参阅 NDB Cluster 的初始配置,了解如何配置 MySQL NDB Cluster,以及 NDB Cluster 的首次启动,了解如何首次启动它。在按照这些说明操作时,请根据 NDB Cluster 安装中 SQL 节点的以下详细信息进行调整。
所有配置文件(如
my.cnf
)都位于/etc/mysql
下所有二进制文件、库、头文件等都位于
/usr/bin
和/usr/sbin
下数据目录为
/var/lib/mysql
安装其他 MySQL NDB Cluster 产品和组件
您可以使用 APT 从 MySQL APT 存储库安装 MySQL NDB Cluster 的单个组件和附加产品。为此,假设您的系统存储库列表中已存在 MySQL APT 存储库(请参阅 为 MySQL NDB Cluster 添加 MySQL Yum 存储库),请按照 使用 APT 安装其他 MySQL 产品和组件 中给出的相同步骤操作。
已知问题:目前,并非所有运行 MySQL NDB Cluster 测试套件所需的组件在安装测试套件包(mysql-cluster-community-test
)时都会自动安装。在运行测试套件之前,请使用 apt-get install 安装以下软件包
mysql-cluster-community-auto-installer
mysql-cluster-community-management-server
mysql-cluster-community-data-node
mysql-cluster-community-memcached
mysql-cluster-community-java
ndbclient-dev
附录 A:手动添加和配置 MySQL APT 存储库
以下是手动将 MySQL APT 存储库添加到系统软件存储库列表并进行配置的步骤,无需使用 MySQL 提供的发行版软件包。
下载 MySQL GPG 公钥(请参阅 使用 GnuPG 进行签名检查,了解如何操作)并将其保存到一个文件中,不要添加任何空格或特殊字符。然后,使用以下命令将密钥添加到系统 GPG 密钥环
$> sudo apt-key add path/to/signature-file
或者,您可以使用 apt-key 实用程序将 GPG 密钥直接下载到 APT 密钥环
$> sudo apt-key adv --keyserver pgp.mit.edu --recv-keys A8D3785C
注意MySQL 8.0.36 及更高版本发行版软件包的 KeyID 为
A8D3785C
,如上所示。对于更早的 MySQL 版本,KeyID 为3A79BD29
。使用不正确的密钥会导致密钥验证错误。创建一个名为
/etc/apt/sources.list.d/mysql.list
的文件,并在其中放入以下格式的存储库条目(这不是要执行的命令)deb http://repo.mysql.com/apt/{debian|ubuntu}/ {jammy} {mysql-8.0|mysql-tools|mysql-8.4-lts}
选择与您的存储库设置相关的选项。
根据您的平台选择 “debian” 或 “ubuntu”。
选择与系统版本相匹配的版本名称;例如,“bullseye”(适用于 Debian 11)和 “jammy”(适用于 Ubuntu 22.04)。
要安装 MySQL 服务器、客户端和数据库通用文件,请根据所需的 MySQL 系列 选择 “mysql-8.0”、“mysql-8.4” 或 “mysql-innovation”。要切换到其他发行版系列,请返回并使用新选择调整条目。这也包括访问 MySQL Router 和 MySQL Shell 等工具。
注意如果系统上已经安装了 MySQL 版本,请勿在此步骤中选择较低版本,否则可能会导致不支持的降级操作。
包含 “mysql-tools” 以安装连接器。
例如,在 Ubuntu 22.04 平台上,使用
mysql.list
文件中的以下行从 MySQL APT 存储库安装 MySQL 8.0 和最新的 MySQL 连接器deb http://repo.mysql.com/apt/ubuntu/ jammy mysql-8.0 mysql-tools
使用以下命令从 MySQL APT 存储库获取最新软件包信息
$> sudo apt-get update
您已配置系统使用 MySQL APT 存储库,现在可以继续使用 使用 APT 安装 MySQL 或 使用 APT 安装其他 MySQL 产品和组件。
版权所有 © 1997, 2024,Oracle 及其附属公司。
许可限制
本软件及相关文档受包含使用和披露限制的许可协议约束,并受知识产权法保护。除许可协议明确允许或法律允许外,您不得以任何形式或任何方式使用、复制、复制、翻译、广播、修改、许可、传输、分发、展示、执行、出版或展示其任何部分。除非法律要求为了互操作性,否则禁止对本软件进行反向工程、反汇编或反编译。
免责声明
此处包含的信息如有更改恕不另行通知,不保证无误。如果您发现任何错误,请以书面形式向我们报告。
限制权利声明
如果这是交付给美国政府或代表美国政府进行许可的任何人使用的软件、软件文档、数据(按照联邦采购条例定义)或相关文档,则以下声明适用
美国政府最终用户:Oracle 程序(包括任何操作系统、集成软件、交付硬件上嵌入、安装或激活的任何程序以及对这些程序的修改)以及交付给美国政府最终用户或其访问的 Oracle 计算机文档或其他 Oracle 数据根据适用的联邦采购条例和机构特定补充条例,属于“商业计算机软件”、“商业计算机软件文档”或“有限权利数据”。因此,使用、复制、复制、发布、显示、披露、修改、准备衍生作品和/或改编 i) Oracle 程序(包括任何操作系统、集成软件、交付硬件上嵌入、安装或激活的任何程序以及对这些程序的修改)、ii) Oracle 计算机文档和/或 iii) 其他 Oracle 数据,应受适用合同中包含的许可证中规定的权利和限制的约束。管理美国政府使用 Oracle 云服务的条款由适用服务合同定义。未授予美国政府任何其他权利。
危险应用声明
本软件或硬件是为各种信息管理应用的通用用途而开发的。它不是为任何固有危险的应用(包括可能造成人身伤害的应用)开发或设计的。如果您在危险应用中使用本软件或硬件,则应负责采取所有适当的失效保护、备份、冗余和其他措施,以确保其安全使用。甲骨文公司及其附属公司不对在危险应用中使用本软件或硬件造成的任何损失负责。
商标声明
Oracle、Java、MySQL 和 NetSuite 是 Oracle 及其附属公司的注册商标。其他名称可能是其各自所有者的商标。
Intel 和 Intel Inside 是英特尔公司的商标或注册商标。所有 SPARC 商标均在许可下使用,是 SPARC International, Inc. 的商标或注册商标。AMD、Epyc 和 AMD 徽标是 Advanced Micro Devices 的商标或注册商标。UNIX 是 The Open Group 的注册商标。
第三方内容、产品和服务免责声明
本软件或硬件和文档可能提供对第三方内容、产品和服务的访问或有关这些内容、产品和服务的信息。甲骨文公司及其附属公司不对任何第三方内容、产品和服务承担任何责任,并明确放弃与第三方内容、产品和服务相关的任何形式的保证,除非您与甲骨文之间适用的协议中另有规定。除您与甲骨文之间适用的协议中规定外,甲骨文公司及其附属公司不对您访问或使用第三方内容、产品或服务而导致的任何损失、成本或损害负责。
使用本文档
本文档并非根据 GPL 许可证分发。使用本文档受以下条款约束
您只能为个人使用创建本文档的打印副本。可以转换为其他格式,只要实际内容未以任何方式更改或编辑。您不得以任何形式或任何媒体发布或分发本文档,除非您以类似于 Oracle 分发的方式分发文档(即,以电子方式在网站上与软件一起下载)或在 CD-ROM 或类似的媒体上,但前提是必须与软件一起在同一媒体上分发文档。任何其他使用,例如分发印刷副本或在本文档或本文档的一部分在另一出版物中使用,都需要获得 Oracle 授权代表的书面事先同意。Oracle 及其附属公司保留对本文档未在本协议中明确授予的任何和所有权利。
有关 Oracle 对可访问性的承诺的信息,请访问 Oracle 可访问性计划网站 http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc。
购买了支持的 Oracle 客户可以通过 My Oracle Support 访问电子支持。有关信息,请访问 http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info 或访问 http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs
(如果您听力障碍)。