如何在 Debian 10 上安装最新的 MySQL

介绍

MySQL是一个著名的开源数据库管理系统,用于存储和检索各种流行的应用程序的数据。

在 Debian 10 中,MySQL 项目的社区叉子 MariaDB 被包装为默认的 MySQL 变体,虽然 MariaDB 在大多数情况下运行得很好,但如果您需要只在 Oracle 的 MySQL 中找到的功能,您可以从由 MySQL 开发人员维护的存储库中安装和使用包。

在本教程中,您将通过添加此存储库来安装最新版本的MySQL,安装MySQL软件本身,安全安装,并测试MySQL是否运行并响应命令。

前提条件

在开始本教程之前,您将需要一个 Debian 10 服务器,该服务器具有非root 的用户,具有sudo权限和配置了防火墙。

步骤 1 – 添加MySQL软件存储库

MySQL 开发人员提供一个 .deb 包,处理配置和安装官方 MySQL 软件存储库.一旦设置了存储库,您将能够使用 Debian 的标准 apt 命令来安装该软件。

在此之前,您需要安装先决条件的 GnuPG包,这是 OpenPGP标准的开源实现。

首先,更新本地包索引以反映最新的上游变化:

1sudo apt update

然后,安装gnupg包:

1sudo apt install gnupg

确认安装后,APT 将安装gnupg及其依赖。

接下来,您将下载MySQL .deb包与 wget,然后使用 dpkg命令安装它。

在您的 Web 浏览器中加载 MySQL 下载页面。在右下角找到 下载 按钮,然后点击到下一个页面. 此页面将提示您登录或注册 Oracle Web 帐户。 您可以跳过这个,并找到链接说 不谢谢,只需开始我的下载 。 右键单击链接,选择 ** 复制链接地址** (此选项可能不同,取决于您的浏览器)。

在您的服务器上,移动到您可以写入的目录,例如本示例中使用的临时 /tmp 目录:

1cd /tmp

接下来,使用wget下载文件,记住将您复制的地址粘贴到以下命令中突出部分的位置:

1wget https://dev.mysql.com/get/mysql-apt-config_0.8.22-1_all.deb

该文件现在应该被下载到您的当前目录. 列出文件来确认:

1ls

输出将返回各种文件的列表,包括您刚刚下载的文件,如下示例所示:

1[secondary_label Output]
2. . .
3mysql-apt-config_0.8.22-1_all.deb
4. . .

现在你已经准备好安装了。运行用于安装、删除和检查.deb 软件包的 dpkg 命令. -i 标志表明你想从指定的文件中安装:

1sudo dpkg -i mysql-apt-config*

在安装过程中,您将收到一个配置屏幕,您可以指定您喜欢的MySQL版本,以及安装其他MySQL相关工具的存储库的选项。默认值将添加最新的MySQL稳定版本的存储库信息,而不是其他任何东西。

现在该包将完成添加存储库。更新您的apt包缓存以使新的软件包可用:

1sudo apt update

现在你已经添加了MySQL存储库,你已经准备好安装实际的MySQL服务器软件. 如果你需要更新这些存储库的配置,运行sudo dpkg-reconfigure mysql-apt-config,选择新的选项,然后sudo apt-get update来更新你的包缓存。

第2步:安装MySQL

添加了存储库并更新了您的包缓存,现在您可以使用apt来安装最新的MySQL服务器包:

1sudo apt install mysql-server

apt 会扫描所有可用的 mysql-server 包,并确定 MySQL 提供的包是最新的和最佳的候选人。 然后它会计算包依赖性,并要求您批准安装。

您将被要求在安装的配置阶段设置一个 root 密码。 选择并确认一个安全的密码以继续使用。 接下来,会出现提示,要求您选择默认身份验证插件。 阅读显示屏以了解选项。 如果您不确定,选择 Use Strong Password Encryption 更安全。

MySQL 应该现在安装并运行,请使用 systemctl 检查:

1sudo systemctl status mysql
 1[secondary_label Output]
 2 mysql.service - MySQL Community Server
 3   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
 4   Active: active (running) since Thu 2022-02-24 18:59:22 UTC; 23min ago
 5     Docs: man:mysqld(8)
 6           http://dev.mysql.com/doc/refman/en/using-systemd.html
 7 Main PID: 3722 (mysqld)
 8   Status: "Server is operational"
 9    Tasks: 38 (limit: 4915)
10   Memory: 371.7M
11   CGroup: /system.slice/mysql.service
12           └─3722 /usr/sbin/mysqld
13
14Feb 24 18:59:21 sql-debian systemd[1]: Starting MySQL Community Server...
15Feb 24 18:59:22 sql-debian systemd[1]: Started MySQL Community Server.

「活跃:活跃(运行)」字段表示MySQL已安装并运行,在下一步,您将使安装更安全。

步骤三:确保MySQL

MySQL 附有一個命令,在新安裝上執行一些與安全相關的更新,您現在可以執行:

1mysql_secure_installation

这将要求您在安装过程中设置的MySQL root 密码。 输入它并按ENTER。 现在您将回答一系列是的或没有提示。

首先,您将被问及 验证密码插件 ,该插件可以为您的MySQL用户自动执行某些密码强度规则。启用此项功能是您需要根据您的个人安全需求做出决定。 键入y并按ENTER来启用它,或者按ENTER来跳过它。

接下来,您将被问到是否想要更改 root 密码. 由于您最近在安装MySQL时创建了密码,您可以安全地跳过这个。

您将被问及删除匿名MySQL用户,禁用远程 root 登录,删除测试数据库,并重新加载特权表,以确保以前的更改有效。

所有提示都响应后,脚本将退出. 现在您的MySQL安装是合理安全的. 接下来,您将通过运行连接到服务器并返回一些信息的客户端来再次测试它。

步骤4:测试MySQL

「mysqladmin」是MySQL的命令行管理客户端,您将使用它来连接到服务器并输出一些版本和状态信息。「-u root」部分告诉「mysqladmin」作为MySQL root 用户登录,「-p」指示客户端请求密码,而「version」是您想要运行的实际命令:

1mysqladmin -u root -p version

输出结果将显示运行的是哪个版本的MySQL服务器,其运行时间和一些其他状态信息如下:

 1[secondary_label Output]
 2mysqladmin Ver 8.0.28 for Linux on x86_64 (MySQL Community Server - GPL)
 3Copyright (c) 2000, 2022, Oracle and/or its affiliates.
 4
 5Oracle is a registered trademark of Oracle Corporation and/or its
 6affiliates. Other names may be trademarks of their respective
 7owners.
 8
 9Server version 8.0.28
10Protocol version 10
11Connection Localhost via UNIX socket
12UNIX socket             /var/run/mysqld/mysqld.sock
13Uptime:                 25 min 31 sec
14
15Threads: 2 Questions: 20 Slow queries: 0 Opens: 143 Flush tables: 3 Open tables: 62 Queries per second avg: 0.013

此输出确认您已成功安装和保护最新的 MySQL 服务器。

结论

您现在已经安装了最新稳定版本的MySQL,该版本应该适用于许多流行的应用程序。

有关MySQL的基础知识的更多信息,我们鼓励您查看以下教程:

Published At
Categories with 技术
comments powered by Disqus