前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。
简介
MySQL 是一个开源的数据库管理系统,通常作为流行的 LEMP(Linux、Nginx、MySQL/MariaDB、PHP/Python/Perl)堆栈的一部分安装。它使用关系数据库和 SQL(结构化查询语言)来管理数据。
CentOS 7 更倾向于使用 MariaDB,这是 MySQL 原始开发人员管理的 MySQL 的一个分支,并且被设计为 MySQL 的替代品。如果在 CentOS 7 上运行
yum install mysql
,实际上安装的是 MariaDB 而不是 MySQL。如果你对 MySQL 和 MariaDB 有疑问,一般情况下 MariaDB 可以无缝替代 MySQL,所以除非你有特定的 MySQL 使用场景,可以参考在 CentOS 7 上安装 MariaDB 指南。
本教程将解释如何在 CentOS 7 服务器上安装 MySQL 版本 8。
先决条件
要按照本教程操作,你需要:
- 一个具有
sudo
权限的非 root 用户的 CentOS 7。你可以在《在 CentOS 7 上进行初始服务器设置》指南中了解如何设置具有这些权限的用户。
步骤 1 — 安装 MySQL
如简介中所述,使用 Yum 命令安装 MySQL 实际上安装的是 MariaDB。要安装 MySQL,我们需要访问 MySQL 社区 Yum 仓库,该仓库提供 MySQL 的软件包。
在网页浏览器中访问:
https://dev.mysql.com/downloads/repo/yum/
请注意,突出显示的下载链接并不直接指向文件,而是指向随后的页面,邀请你登录或注册账户。如果你不想创建账户,你可以找到“不,直接开始我的下载”文本,然后右键单击并复制链接位置,或者你可以在下面的命令中编辑版本号。
找到所需的版本,并根据需要在下面的链接中更新它:
!突出显示当前 yum 仓库名称的屏幕截图
curl -sSLO https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
保存 rpm 文件后,我们将通过运行
md5sum
来验证下载的完整性,并将其与网站上列出的相应 MD5 值进行比较:
md5sum mysql80-community-release-el7-5.noarch.rpm
e2bd920ba15cd3d651c1547661c60c7c mysql80-community-release-el7-5.noarch.rpm
将此输出与网站上的适当 MD5 值进行比较:
!突出显示 md5dsum 的屏幕截图
现在我们已经验证了文件没有损坏或更改,我们将安装该软件包:
sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm
这将添加两个新的 MySQL yum 仓库,现在我们可以使用它们来安装 MySQL 服务器:
sudo yum install mysql-server
按下
y
确认你要继续。由于我们刚刚添加了该软件包,我们还将被提示接受其 GPG 密钥。按下
y
下载并完成安装。
步骤 2 — 启动 MySQL
我们将使用以下命令启动守护进程:
sudo systemctl start mysqld
systemctl
不会显示所有服务管理命令的结果,因此为了确保我们成功了,我们将使用以下命令:
sudo systemctl status mysqld
如果 MySQL 已成功启动,输出应包含
Active: active (running)
,并且最后一行应该类似于:
Dec 01 19:02:20 centos-512mb-sfo2-02 systemd[1]: Started MySQL Server.
在安装过程中,为 MySQL root 用户生成了临时密码。使用以下命令在
mysqld.log
中找到它:
sudo grep 'temporary password' /var/log/mysqld.log
2022-01-24T19:54:46.313728Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: mqRfBU_3Xk>r
记下密码,在下一步中你将需要它来保护安装,并且你将被要求更改它。默认密码策略要求 12 个字符,至少包含一个大写字母、一个小写字母、一个数字和一个特殊字符。
步骤 3 — 配置 MySQL
MySQL 包含一个安全脚本,用于更改一些不太安全的默认选项,例如远程 root 登录和示例用户。
使用以下命令运行安全脚本。
sudo mysql_secure_installation
这将提示你输入默认 root 密码。一旦输入,你将需要更改它。
The existing password for the user account root has expired. Please set a new password.
New password:
输入一个包含至少一个大写字母、一个小写字母、一个数字和一个特殊字符的新 12 位密码。在提示时重新输入。
你将收到有关新密码强度的反馈,然后立即被要求再次更改它。由于你刚刚更改过,你可以自信地选择
No
:
Estimated strength of the password: 100
Change the password for root ? (Press y|Y for Yes, any other key for No) :
在我们拒绝再次更改密码的提示后,我们将按下
Y
,然后按下
ENTER
回答所有后续问题,以删除匿名用户,禁止远程 root 登录,删除测试数据库及其访问权限,并重新加载权限表。
现在我们已经保护了安装,让我们来测试它。
第四步 — 测试 MySQL
我们可以通过连接
mysqladmin
工具来验证我们的安装并获取有关它的信息。
mysqladmin
是一个客户端工具,可以让您运行管理命令。使用以下命令作为 root 连接到 MySQL (
-u root
),提示输入密码 (
-p
),并返回版本信息。
mysqladmin -u root -p version
您应该会看到类似于以下内容的输出:
mysqladmin Ver 8.0.28 for Linux on x86_64 (MySQL Community Server - GPL)
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 8.0.28
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/lib/mysql/mysql.sock
Uptime: 3 min 2 sec
Threads: 2 Questions: 14 Slow queries: 0 Opens: 133 Flush tables: 3 Open tables: 49 Queries per second avg: 0.076
这表明您的安装已成功。
结论
在本教程中,我们在 CentOS 7 服务器上安装并保护了 MySQL。要了解更多关于使用 MySQL 的信息,可以参考这个学习 MySQL 命令的指南。您还可以考虑实施一些额外的安全措施。
版权归原作者 白如意i 所有, 如有侵权,请联系我们删除。