使用MySQL APT源在Linux上安装MySQL

全新安装MySQL的步骤

以下说明假定您的系统上尚未安装任何版本的MySQL(无论是由Oracle还是其他方分发)

添加MySQL的Apt源。

将MySQL的APT存储库添加到系统的软件存储库列表中。

1、转到MySQL APT存储库的下载页面MySQL :: Download MySQL APT Repository

2、选择并下载Linux版本的发行包。虽然这不是每次更新都需要的,但它确实会更新MySQL存储库信息以包含当前信息,其中包括添加新的LTS系列。

3、使用以下命令安装下载的发布包,将*version-specific-package-name*替换为下载包的名称(如果您不在包所在的文件夹中运行该命令,则前面是其路径):

bash 复制代码
$> sudo dpkg -i /PATH/version-specific-package-name.deb

例如,对于版本*w.x.y-z*的包,命令是:

bash 复制代码
$> sudo dpkg -i mysql-apt-config_w.x.y-z_all.deb

请注意,相同的软件包适用于所有受支持的Debian和Ubuntu平台。

4、在安装软件包的过程中,系统会要求您选择要安装的MySQL服务器和其他组件(例如MySQLWorkbench)的版本。如果您不确定选择哪个版本,请不要更改为您选择的默认选项。如果您不想安装特定组件,也可以选择无。在对所有组件进行选择后,选择确定以完成发布软件包的配置和安装。

创新版以MySQL8.1开头,在组件名称中包含"-innovation-"。您可以随时更改以后版本的选择

5、使用以下命令从MySQL APT存储库更新包信息(此步骤是强制性的):

bash 复制代码
$> sudo apt-get update
复制代码
您也可以手动添加和配置MySQLAPT存储库

一旦在您的系统上启用MySQL APT存储库,您将无法再从平台的本机软件存储库安装任何MySQL包,直到MySQLAPT存储库被禁用。

一旦在您的系统上启用MySQL APT存储库,通过apt-get升级命令进行的任何系统范围升级将自动升级您系统上的MySQL包,并替换您从Linux发行版的软件存储库安装的任何本机MySQL包,如果APT从MySQL APT存储库中找到它们的替代品。

选择主要发布版本

默认情况下,MySQL服务器和其他所需组件的所有安装和升级都来自您在安装配置包时选择的主要版本的发布系列。但是,您可以通过重新配置已安装的配置包随时切换到另一个受支持的主要发布系列。使用以下命令:

bash 复制代码
$> sudo dpkg-reconfigure mysql-apt-config

然后一个对话框会要求您选择所需的主要发布版本。做出选择并选择确定。返回命令提示符后,使用以下命令从MySQLAPT存储库更新包信息:

bash 复制代码
$> sudo apt-get update

下次使用apt-get install命令时,将安装所选系列中的最新版本。

您可以使用相同的方法更改要使用MySQLAPT存储库安装的任何其他MySQL组件的版本。

使用APT安装MySQL

通过以下命令安装MySQL:

bash 复制代码
$> sudo apt-get install mysql-server

这将安装MySQL服务器的包,以及客户端和数据库公共文件的包。在安装过程中,系统会要求您为MySQL安装的root用户提供密码。请确保记住您设置的root密码。

启动和停止MySQL服务器

MySQL服务器安装后自动启动,您可以使用以下命令检查MySQL服务器的状态:

bash 复制代码
$> systemctl status mysql

如果操作系统启用了systemd,则应使用标准systemctl(或参数反转的service)命令(例如stop、start、status和restart)来管理MySQL服务器服务。mysql服务默认启用,并在系统重新启动时启动。

一些依赖于本机MySQL包的第三方本机存储库包可能无法与MySQLAPT存储库包一起使用,不应与它们一起使用;其中包括akonadi-backend-mysql、handlersocket-mysql-5.5和zoneminder。

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

您可以使用APT从MySQL APT存储库安装MySQL的各个组件。假设您已经在系统的存储库列表中拥有MySQL的APT存储库,首先,使用以下命令从MySQL APT存储库获取最新的包信息:

bash 复制代码
$> sudo apt-get update

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

bash 复制代码
$> sudo apt-get install package-name

例如,要安装MySQLWorkbench:

bash 复制代码
$> sudo apt-get install mysql-workbench-community

要安装共享客户端库:

bash 复制代码
$> sudo apt-get install libmysqlclient21
使用MySQLAPT存储库从源代码安装MySQL

此特征仅在64位系统上受支持。您可以下载MySQL源码并使用MySQLAPT存储库构建它:

1、将MySQL APT存储库添加到系统的存储库列表中,然后选择所需的主要版本系列

2、使用以下命令从MySQLAPT存储库更新包信息(此步骤是强制性的):

bash 复制代码
$> sudo apt-get update
复制代码

3、安装构建过程所依赖的包:

bash 复制代码
$> sudo apt-get build-dep mysql-server
复制代码

4、下载MySQL主要组件的源码,然后构建它们(在您希望下载的文件和构建所在的文件夹中运行此命令),安装各种MySQL组件的deb包被创建:

bash 复制代码
$> apt-get source -b mysql-server

5、为您需要的MySQL组件选择deb包并使用以下命令安装它们:

bash 复制代码
$> sudo dpkg -i package-name.deb

请注意,MySQL包之间存在依赖关系。对于MySQL服务器的基本安装,请按照以下步骤安装数据库公共文件包、客户端包、客户端元包、服务器包和服务器元包(按顺序):

a、使用以下命令预配置MySQL服务器包:

bash 复制代码
$> sudo dpkg-preconfigure mysql-community-server_version-and-platform-specific-part.deb
复制代码
系统会要求您为MySQL安装提供root用户的密码

b、使用单个命令安装所需的包:

bash 复制代码
$> sudo dpkg -i mysql-{common,community-client,client,community-server,server}_*.deb
复制代码

c、如果dpkg警告您未满足的依赖项,您可以使用apt-get修复它们:

bash 复制代码
sudo apt-get -f install
复制代码

以下是文件安装在系统上的位置:

  • 所有配置文件(如my.cnf)都在/etc/mysql

  • 所有二进制文件、库、头文件等都在/usr/bin/usr/sbin

  • 数据目录在/var/lib/mysql

使用MySQL APT存储库升级MySQL

以下说明假定MySQL已使用MySQLAPT存储库安装在您的系统上,在升级之前备份数据库尤其重要

使用MySQLAPT存储库为MySQL安装执行就地升级(即替换旧版本,然后使用旧数据文件运行新版本),方法如下:

1、确保系统的存储库列表中已经有MySQL的APT存储库

2、通过运行以下命令,确保您在MySQLAPT存储库中拥有最新的包信息:

bash 复制代码
$> sudo apt-get update
复制代码

3、请注意,默认情况下,MySQL APT存储库将MySQL更新到您在向系统添加MySQLAPT存储库时选择的发布系列。如果要升级到另一个发布系列,请按照选择主要发布版本中给出的步骤进行选择。

一般来说,要从一个发布系列升级到另一个发布系列,请转到下一个系列,而不是跳过一个系列。例如,如果您当前运行MySQL5.7并希望升级到更新的系列,请先升级到8.4MySQL。MySQLAPT存储库不支持MySQL就地降级。

4、通过以下命令升级MySQL:

bash 复制代码
$> sudo apt-get install mysql-server

如果有更新版本,MySQL服务器、客户端和数据库通用文件将升级。要升级任何其他MySQL包,请使用相同的apt-get install命令并提供要升级的包的名称:

bash 复制代码
$> sudo apt-get install package-name

要查看从MySQLAPT存储库安装的软件包的名称,请使用以下命令:

bash 复制代码
$> dpkg -l | grep mysql | grep ii

如果您使用apt-get升级执行系统范围的升级,则只有MySQL库和开发包会升级为较新的版本(如果可用)。要升级其他组件,包括服务器、客户端、测试套件等,请使用apt-get install命令。

5、MySQL服务器总是在APT更新后重新启动。

使用MySQLAPT存储库替换MySQL的本机发布

MySQL的变体和分支由不同方通过自己的软件存储库或下载站点分发。只需几个步骤,您就可以将从Linux平台软件存储库安装的原生MySQL分布替换为MySQLAPT存储库中的分布。

一些依赖于本机MySQL包的第三方本机存储库包可能无法与MySQLAPT存储库包一起使用,不应与它们一起使用;其中包括akonadi-backend-mysql、handlersocket-mysql-5.5和zoneminder。

1、备份您的数据库

为避免数据丢失,请在尝试使用MySQLAPT存储库替换MySQL安装之前始终备份数据库。

2、添加MySQL APT存储库并选择发布系列

将MySQLAPT存储库添加到系统的存储库列表中,并选择所需的发布系列。

3、用APT更新替换本机发布

按照设计,当您对MySQL包执行升级时,MySQLAPT存储库会替换您的本机MySQL分布。要执行升级,请按照使用MySQLAPT存储库升级MySQL的步骤4中给出的相同说明进行操作。

一旦使用MySQLAPT存储库替换了MySQL的本机分布,使用apt-get清除、apt-get删除--purge或dpkg-P命令从本机存储库中清除旧的MySQL包可能会以各种方式影响新安装的MySQL服务器。因此,不要从本机存储库包中清除旧的MySQL包。

替换通过Direct deb包下载安装的MySQL服务器

deb包可以从MySQL开发人员专区的MySQL下载页面或MySQLAPT存储库下载。来自两个来源的deb包不同,它们以不同的方式安装和配置MySQL。

如果您已经使用MySQLDeveloper Zone的deb包安装了MySQL,并且现在想要使用MySQLAPT存储库中的包替换安装,请按照以下步骤操作:

1、备份数据库

2、按照前面给出的步骤添加MySQL的APT存储库

3、通过运行以下命令删除MySQL的旧安装:

bash 复制代码
$> sudo dpkg -P mysql
复制代码

4、从MySQLAPT存储库安装MySQL:

bash 复制代码
$> sudo apt-get install mysql-server
复制代码

5、如果需要,请在新的MySQL安装中恢复数据。

用APT去除MySQL

要卸载MySQL服务器和使用MySQLAPT存储库安装的相关组件,首先,使用以下命令删除MySQL服务器:

bash 复制代码
$> sudo apt-get remove mysql-server

然后,删除与MySQL服务器一起自动安装的任何其他软件:

bash 复制代码
$> sudo apt-get autoremove

要卸载其他组件,请使用以下命令,将**package-name**替换为要删除的组件的包名称:

bash 复制代码
$> sudo apt-get remove package-name

要查看从MySQLAPT存储库安装的软件包列表,请使用以下命令:

bash 复制代码
$> dpkg -l | grep mysql | grep ii
升级共享客户端库的特别说明

您可以通过以下命令从MySQLAPT存储库安装共享客户端库

bash 复制代码
$> sudo apt-get install libmysqlclient21

如果您已经从Linux平台的软件存储库安装了共享客户端库,则MySQLAPT存储库可以使用相同的命令使用自己的包对其进行更新

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

如果您重新编译应用程序并将它们与更新的库动态链接:与新版本的共享库一样,使用更新的、更新的共享库编译的任何应用程序都可能需要在部署应用程序的系统上使用这些更新的库。如果这些库不到位,需要共享库的应用程序可能会失败。因此,建议将MySQL的共享库包部署在这些系统上。您可以通过将MySQLAPT存储库添加到系统中来做到这一点(请参阅添加MySQLApt存储库)并使用本节开头给出的命令安装最新的共享客户端库。

使用APT存储库安装MySQLNDB集群

MySQLAPT存储库支持在Debian和Ubuntu系统上安装MySQLNDB集群。如果您的系统上已经安装了MySQL服务器或MySQLNDB集群,请确保它已停止,并且在继续之前备份了数据和配置文件。

1、为MySQL NDB集群添加MySQLAPT存储库

将MySQLAPT存储库添加到系统的存储库列表中。在配置包的安装过程中,当您被问及要配置哪个MySQL产品时,选择"MySQL服务器和集群";当被问及您希望接收哪个版本时,选择"mysql-cluster-x .y."返回命令提示符后,转到下面的步骤2。

如果您的系统上已经安装了配置包,请运行以下命令确保它是最新的:

bash 复制代码
$> sudo apt-get install mysql-apt-config

选择MySQLNDB集群进行安装。当您被问及要配置哪个MySQL产品时,选择"MySQL服务器&集群";当被问及希望接收哪个版本时,选择"mysql-cluster-x .y."返回命令提示符后,使用以下命令从MySQLAPT存储库中更新包信息:

bash 复制代码
$> sudo apt-get update

2、安装MySQLNDB集群

要最小限度地安装MySQLNDB集群,请执行以下步骤:

a、为SQL节点安装组件:

bash 复制代码
$> sudo apt-get install mysql-cluster-community-server

系统将要求您为SQL节点的root用户提供密码

b、安装管理节点的可执行文件:

bash 复制代码
$> sudo apt-get install mysql-cluster-community-management-server

c、安装数据节点的可执行文件:

bash 复制代码
$> sudo apt-get install mysql-cluster-community-data-node
复制代码

3、配置和启动MySQLNDB集群

请参阅第25.3.3节,"NDB集群的初始配置"了解如何配置MySQLNDB集群和第25.3.4节,"NDB集群的初始启动"了解如何首次启动它。按照这些说明进行操作时,请根据以下有关NDB集群安装的SQL节点的详细信息进行调整:

a、所有配置文件(如my.cnf)都在/etc/mysql

b、所有二进制文件、库、头文件等都在/usr/bin/usr/sbin

c、数据目录是/var/lib/mysql

安装其他MySQLNDB集群产品和组件

您可以使用APT从MySQLAPT存储库安装MySQLNDB集群的单个组件和附加产品。

已知问题:目前,在安装测试套件包(mysql-cluster-community-test)时,并不是所有运行MySQLNDB集群测试套件所需的组件都会自动安装。在运行测试套件之前,请使用apt-get install安装以下软件包:

  • mysql-cluster-community-auto-installer

    mysql-cluster-community-auto-installer

  • mysql-cluster-community-management-server

    mysql-cluster-community-management-server

  • mysql-cluster-community-data-node

    mysql-cluster-community-data-node

  • mysql-cluster-community-memcached

    mysql-cluster-community-memcached

  • mysql-cluster-community-java

    mysql-cluster-community-java

  • ndbclient-dev

    ndbclient-dev

附录A:手动添加和配置MySQLAPT存储库

以下是手动将MySQLAPT存储库添加到系统软件存储库列表并对其进行配置的步骤,而无需使用MySQL提供的发布包:

1、下载MySQLGPG公钥,并将其保存到文件中,而不添加任何空格或特殊字符。然后,使用以下命令将密钥添加到系统的GPG密钥环:

bash 复制代码
$> sudo apt-key add path/to/signature-file

2、或者,您可以使用apt-key实用程序直接将GPG密钥下载到您的APT密钥环:

bash 复制代码
$> sudo apt-key adv --keyserver pgp.mit.edu --recv-keys A8D3785C
  • MySQL和更高版本包的密钥ID为A8D3785C,如上所示。对于早期MySQL版本,密钥ID为3A79BD29。使用不正确的密钥可能会导致密钥验证错误。

3、创建一个名为/etc/apt/sources.list.d/mysql.list的文件,并将以下格式的存储库条目放入其中(这不是要执行的命令):

bash 复制代码
deb http://repo.mysql.com/apt/{debian|ubuntu}/ {bookworm|jammy} {mysql-tools|mysql-8.4-lts|mysql-8.0}

为您的存储库设置选择相关选项:

  • 根据您的平台选择"debian"或"ubuntu"。

  • 为您的系统版本选择适当的版本名称;示例包括"书虫"(适用于Debian 12)和"jammy"(适用于Ubuntu 22.04)。

  • 要安装MySQL服务器、客户端和数据库常用文件,请根据您想要的MySQL系列选择"mysql-8.4"、"mysql-8.0"或"mysql-创新"。要稍后切换到另一个发布系列,请返回并使用您的新选择调整条目。这还包括访问MySQL路由器和MySQLShell等工具。如果您的系统上已经安装了MySQL版本,请不要在此步骤中选择较低版本,否则可能会导致不受支持的降级操作。

  • 包括"mysql-tools"以安装连接器。例如,在Ubuntu 22.04平台上,使用mysql.list文件中的这些行来安装MySQL8.4和MySQLAPT存储库中的最新MySQL连接器:

    bash 复制代码
    deb http://repo.mysql.com/apt/ubuntu/ jammy mysql-8.4 mysql-tools
  • 使用以下命令从MySQLAPT存储库获取最新的包信息:

    bash 复制代码
    $> sudo apt-get update

    您已将系统配置为使用MySQLAPT存储库,现在可以继续使用APT安装MySQL或使用APT安装其他MySQL产品和组件。

相关推荐
蜗牛_snail4 分钟前
学习笔记 : MySQL进阶篇一之架构和日志文件
笔记·学习·mysql
喻师傅14 分钟前
SQL 幂运算 — POW() and POWER()函数用法详解
数据库·sql
檐角小猫20 分钟前
在大数据环境下高效运用NoSQL与关系型数据库的结合策略
大数据·数据库·sql·nosql
蒲公英的孩子32 分钟前
DCU异构程序——Bank冲突
linux·分布式·算法·架构
白宇横流学长32 分钟前
医院管理住院系统的研究与实现
大数据·数据库·数据挖掘
xxxx12344533 分钟前
Linux-Ubuntu之RTC实时时钟显示
linux·c语言·ubuntu
Ljw...44 分钟前
高级IO(epoll)(ET)
服务器·网络·数据库·多路转接·高级io·epoll·et模式
三天不学习1 小时前
【linux系统】mysql 数据库迁移至新服务器
linux·服务器·数据库
m0_748236831 小时前
如何查看本地sql server数据库的ip地址
数据库·网络协议·tcp/ip
北顾南栀倾寒1 小时前
[Linux]进程间通信-共享内存与消息队列
linux·运维·服务器