如何在 Ubuntu 24.04/22.04/20.04 上安装 MySQL 8.0

如果您喜欢此文章,请收藏、点赞、评论,谢谢,祝您快乐每一天。

MySQL 8.0 是一款强大、可靠、高性能的关系数据库管理系统,广泛应用于从 Web 开发到数据仓库等各种应用。MySQL 8.0 以其先进的功能(例如改进的 JSON 支持、窗口函数和强大的安全性增强)而闻名,是开发人员和数据库管理员的首选。

本指南将演示使用命令行终端在 Ubuntu 24.04、22.04 或 20.04 上安装 MySQL 8.0 的两种方法。您可以使用 Ubuntu 默认 APT 仓库中提供的版本,也可以直接从 MySQL 官方 APT 仓库选择最新的稳定版本,确保您能够灵活地选择最符合您需求的选项。

在安装 MySQL 8.0 之前刷新 Ubuntu 软件包

在开始安装过程之前更新系统始终是一个好习惯。此过程可确保所有现有软件包都是最新的,从而最大限度地减少 MySQL 8.0 安装期间发生冲突的可能性。

运行以下命令来更新和升级您的系统:

sudo apt update

sudo apt upgrade

选择 MySQL 8.0 APT 安装选项

有两种方法可以在 Ubuntu 系统上安装 MySQL 8.0。您可以利用 Ubuntu 的默认存储库,也可以导入 MySQL 的官方 APT 存储库。

选项 1:使用 Ubuntu 存储库安装 MySQL 8.0

如果您寻求一种优先考虑系统稳定性的方法,则建议使用此方法。从 Ubuntu 的默认存储库安装 MySQL 可确保获得稳定且经过全面测试的 MySQL 8.0 版本。

要使用此方法安装 MySQL,请执行以下命令:

sudo apt install mysql-server

选项 2:使用 MySQL 社区服务器安装 MySQL 8.0

此方法适合那些希望直接从 MySQL 代码库获取最新稳定版 MySQL 8.0 的用户。这种方法可以快速改进,尤其适用于满足您的系统需求的用户。

安装 MySQL 所需的软件包:

在继续此方法之前,您必须安装一些必要的软件包,通常在大多数 Ubuntu 系统中。

但是,为了安全起见,请运行以下命令以确保它们已安装:

sudo apt install dirmngr ca-certificates software-properties-common apt-transport-https curl lsb-release -y

导入 MySQL 8.0 社区服务器存储库:

要从官方存储库安装 MySQL,请将其 GPG 密钥和存储库导入到您的系统中。操作方法如下:

导入 GPG 密钥:

curl -fsSL http://repo.mysql.com/RPM-GPG-KEY-mysql-2022 | sudo gpg --dearmor | sudo tee /usr/share/keyrings/mysql.gpg > /dev/null

然后,导入 MySQL 8.0 存储库:

echo "deb [arch=(dpkg --print-architecture) signed-by=/usr/share/keyrings/mysql.gpg\] http://repo.mysql.com/apt/ubuntu (lsb_release -cs) mysql-8.0" | sudo tee -a /etc/apt/sources.list.d/mysql.list

如果您是开发人员或有特定要求,您可以选择导入 MySQL 源存储库:

echo "deb-src [arch=(dpkg --print-architecture) signed-by=/usr/share/keyrings/mysql.gpg\] http://repo.mysql.com/apt/ubuntu (lsb_release -cs) mysql-8.0" | sudo tee -a /etc/apt/sources.list.d/mysql.list

开发人员还可以按如下方式导入 MySQL 工具存储库:

echo "deb [arch=(dpkg --print-architecture) signed-by=/usr/share/keyrings/mysql.gpg\] http://repo.mysql.com/apt/ubuntu (lsb_release -cs) mysql-tools" | sudo tee -a /etc/apt/sources.list.d/mysql.list echo "deb-src [arch=(dpkg --print-architecture) signed-by=/usr/share/keyrings/mysql.gpg\] http://repo.mysql.com/apt/ubuntu (lsb_release -cs) mysql-tools" | sudo tee -a /etc/apt/sources.list.d/mysql.list

添加存储库后,您可以通过执行以下命令来验证更改:

grep mysql /etc/apt/sources.list.d/mysql.list

示例输出:

joshua@ubuntu-linux:~$ grep mysql /etc/apt/sources.list.d/mysql.list

deb [arch=amd64 signed-by=/usr/share/keyrings/mysql.gpg] http://repo.mysql.com/apt/ubuntu jammy mysql-8.0

deb-src [arch=amd64 signed-by=/usr/share/keyrings/mysql.gpg] http://repo.mysql.com/apt/ubuntu jammy mysql-8.0

deb [arch=amd64 signed-by=/usr/share/keyrings/mysql.gpg] http://repo.mysql.com/apt/ubuntu jammy mysql-tools

deb-src [arch=amd64 signed-by=/usr/share/keyrings/mysql.gpg] http://repo.mysql.com/apt/ubuntu jammy mysql-tools

导入 MySQL 8.0 后更新 APT 缓存:

现在您已成功导入 MySQL APT 存储库,现在是时候刷新高级包工具 (APT) 缓存以识别新添加的存储库了。

运行以下命令来更新 APT 缓存:

sudo apt update

通过 APT 命令安装 MySQL 8.0 社区版服务器:

满足所有先决条件后,我们现在可以安装 MySQL 8.0 社区版服务器了。运行以下命令开始安装:

sudo apt install mysql-community-server

安装过程中,系统会提示您为 MySQL 根用户设置密码。请确保此密码安全,并记下以备将来参考。确认密码后,系统会要求您选择默认身份验证插件。如有疑问,请选择 MySQL 推荐的"使用强密码加密"。

在 Ubuntu Linux 上为 MySQL 8.0 社区版配置 root 密码

在 Ubuntu Linux 上为 MySQL 8.0 Community 选择身份验证选项

要确认安装,请使用以下命令检查已安装的 MySQL 版本:

apt policy mysql-community-server

在 Ubuntu Linux 上对 MySQL 8.0 社区版本进行 apt policy 命令版本检查的示例

MySQL 8.0 的服务命令

安装 MySQL 8.0 社区版服务器后,系统会自动激活 MySQL 服务并将其设置为开机自启动。了解基本的服务管理命令对于高效操作数据库服务器至关重要。

安装完成后,首要任务之一是确认 MySQL 服务是否按预期运行。使用systemctl专门为与 systemd 服务交互而定制的命令,您可以查看 MySQL 服务的当前状态。执行以下命令:

systemctl status mysql

MySQL 8.0 社区版本在 Ubuntu Linux 上的 systemctl 状态

操作成功后,状态消息应表明服务处于活动状态并且正在正常运行。

了解如何管理 MySQL 服务对于维护数据库服务器至关重要。systemctl您可以使用各种命令直接与 MySQL 服务交互。以下是一些基本命令的概述:

停止 MySQL 服务

要在任何给定时间停止 MySQL 服务,请使用以下命令:

sudo systemctl stop mysqld

启动 MySQL 服务

如果您的 MySQL 服务未运行,或者您已停止它,请使用以下命令重新启动它:

sudo systemctl start mysqld

在系统启动时禁用 MySQL 服务

在某些情况下,您可能不希望 MySQL 服务在系统启动时自动启动。要禁用自动启动,请使用以下命令:

sudo systemctl disable mysqld

在系统启动时启用 MySQL 服务

要恢复上述操作并将 MySQL 服务设置为在系统启动时自动启动,请使用以下命令:

sudo systemctl enable mysqld

重新启动 MySQL 服务

如果需要重新启动 MySQL 服务(例如,在进行配置更改后),请使用以下命令:

sudo systemctl restart mysqld

在 Ubuntu 22.04 或 20.04 上保护 MySQL 8.0

安装 MySQL 后,某些默认设置可能无法满足所有安全标准,从而可能使您的数据库面临入侵或漏洞利用的风险。安装后,一个至关重要的步骤是增强 MySQL 实例的安全性。MySQL 提供了一个安全脚本mysql_secure_installation,可以帮助您加强数据库的安全性。

在 Ubuntu 上运行 MySQL 安全脚本****

mysql_secure_installation脚本是 MySQL 软件包的一部分,用于增强安全性。通过发出以下命令启动脚本:

sudo mysql_secure_installation

与 Ubuntu 上的安全脚本交互

运行该命令后,脚本会提示您输入 root 密码,该密码最初是在 MySQL 安装期间设置的。您将看到有关"验证密码"组件的提示,该组件用于强制执行密码强度策略。通常,默认设置即可。

然后,脚本将引导您完成一系列步骤:

1. Root账户的密码设置

在这里,您可以重置 root 密码。但是,如果您在初始安装时已经设置了密码,则可以选择跳过此步骤。脚本要求您输入两次新密码进行验证。

New password: <---- SET NEW PASSWORD

Re-enter new password: <---- RE-ENTER NEW PASSWORD

2. 删除匿名用户

MySQL 默认包含一个匿名用户帐户。此帐户允许任何人在未拥有经过身份验证的用户帐户的情况下登录 MySQL,这可能是一个重大的安全风险。该脚本可让您删除这些匿名用户帐户:

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

3. 禁止远程 Root 登录

在标准安全协议中,root 用户应该只被允许从"localhost"进行连接。此协议可确保减少远程尝试猜测 root 密码的风险。该脚本会要求您确认停用远程 root 登录:

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

4. 删除测试数据库

默认情况下,MySQL 安装包含一个"测试"数据库。任何人都可以访问此数据库,并且它仅用于测试目的。在将您的设置移至生产环境之前,务必删除测试数据库并访问它:

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

5. 重新加载权限表

重新加载权限表可让您迄今为止所做的所有更改立即生效:

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

通过遵循这些步骤并确认安全更改,您可以增强 MySQL 服务器安装的安全性,从而降低潜在漏洞的风险。

管理 MySQL 8.0

管理 MySQL 服务器涉及多项常规任务,例如更新、升级以及必要时的卸载。Ubuntu Linux 为这些任务提供了高效的命令行实用程序,确保您的 MySQL 服务器保持最新且安全。

更新 MySQL 8.0

定期更新对于维护 MySQL 服务器的平稳运行至关重要。这些更新通常会带来错误修复、安全补丁和新功能,有助于增强服务器的整体安全性和功能。

由于您已将官方 MySQL APT 存储库添加到系统中,因此更新 MySQL 非常简单。以下命令结合了两个不同的命令:sudo apt update 和 sudo apt upgrade。

sudo apt update && sudo apt upgrade

sudo apt update 命令会检索哪些软件包可以升级(包括 MySQL,如果有更新可用)的信息。另一方面,sudo apt upgrade 会升级实际的软件包。

删除 MySQL 8.0

在某些情况下,您可能不再需要 Ubuntu 系统上的 MySQL 服务器。卸载过程包括停止 MySQL 服务并删除软件及相关依赖项。

在 Ubuntu 上停止 MySQL 服务

卸载之前,请确保 MySQL 服务未运行。使用以下命令立即停止该服务:

sudo systemctl stop mysql --now

删除 MySQL 及其依赖项

现在,您可以删除 MySQL 服务器了;任何相关的软件包都不再需要了。sudo apt autoremove 命令在这方面非常高效:

sudo apt autoremove mysql-community-server

或者,如果您使用的是 Ubuntu 版本,请使用以下命令:

sudo apt autoremove mysql-server

此命令删除 MySQL 服务器并清理未使用的包或依赖项,释放系统资源。

删除 MySQL 8.0 存储库

如果您不再打算使用 MySQL,并且之前已导入 MySQL 8.0 社区存储库,那么从系统中删除该存储库是一个好习惯。使用以下命令从 sources.list.d 目录中删除 MySQL 列表文件:

sudo rm /etc/apt/sources.list.d/mysql.list

此步骤可确保您的系统在系统范围升级期间不会尝试检查 MySQL 存储库的更新,从而使您的 APT 源保持精简。

结论

在本指南中,我们详细介绍了在 Ubuntu 24.04、22.04 或 20.04 上安装 MySQL 8.0 的两种有效方法。无论您选择 Ubuntu 默认 APT 仓库中的版本,还是直接从 MySQL 官方 APT 仓库中选择最新的稳定版本,您现在都已掌握了根据需求设置 MySQL 的知识。我的最终建议是使用官方 MySQL 仓库来获取最新的功能和更新。

如果您喜欢此文章,请收藏、点赞、评论,谢谢,祝您快乐每一天。

相关推荐
Yyyy4823 小时前
Ubuntu22.04LTS基于cephadm快速部署Ceph Reef(18.2.X)集群
linux·服务器·ceph
北城笑笑3 小时前
Server 15 ,VMware ESXi 实战指南:Ubuntu 20.04.6 版本虚拟机静态 IP 配置、分辨率固定及远程访问实践
linux·运维·ubuntu·1024程序员节
最好结果4 小时前
MyBatis 精确查询逗号分隔字符串
mysql·mybatis·1024程序员节
苹果醋34 小时前
学习札记-Java8系列-1-Java8新特性简介&为什么要学习Java8
java·运维·spring boot·mysql·nginx
or77iu_N4 小时前
Linux 查找文件
linux·运维·服务器
zz-zjx4 小时前
MySQL 索引深度指南:原理 · 实践 · 运维(适配 MySQL 8.4 LTS)
运维·数据库·mysql
tan180°4 小时前
Linux网络UDP(10)
linux·网络·后端·udp·1024程序员节
布朗克1685 小时前
MySQL 运算符详细说明
数据库·mysql·运算符·1024程序员节
<但凡.5 小时前
Linux修炼:基础IO(二)
linux·运维·服务器·1024程序员节