共计 3036 个字符,预计需要花费 8 分钟才能阅读完成。
随着 CentOS 7 MySQL 的发布,世界上最流行的开源关系数据库管理系统在 CentOS 的仓库中不再可用,MariaDB 已经成为默认的数据库系统。MariaDB 是一个向后兼容的二进制嵌入式 MySQL 替代品。
在本教程中,我们将向您展示如何在 CentOS Linux 7.5 机器上安装 MySQL。
如果您想安装 MariaDB 而不是 MySQL,请查看我们的教程获取安装说明。https://www.linuxidc.com/Linux/2018-05/152576.htm
先决条件
在开始本教程之前,请确保使用具有 sudo 权限的用户帐户或 root 用户登录到您的服务器。如果您的系统中没有 sudo 用户,您可以按照此说明创建一个 sudo 用户,但最好使用 sudo 用户而不是 root 用户来运行管理命令。
正如我们在介绍中提到的,MySQL 在默认的 CentOS 7 存储库中不可用,所以我们将从 MySQL Yum 存储库安装这些软件包。在下面的章节中,我们将向您展示如何安装 MySQL 8.0 和 MySQL 5.7。您应该只在您的 CentOS 7 服务器上安装一个 MySQL 版本。如果您不确定要安装哪个版本,请参阅您要在服务器上部署的应用程序的文档。
安装 MySQL 8.0
在撰写本文时,最新版本的 MySQL 是 8.0 版本。按照以下步骤安装它:
1. 下载并添加存储库
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
2. 安装 MySQL 8.0 包
与其他使用 yum 的软件包一样安装 MySQL:
yum install mysql-community-server
在安装过程中,yum 可能会提示您导入 MySQL GPG 密钥。键入 y 并按 Enter 键。
安装 MySQL 5.7
要安装 MySQL 的先前稳定版本 MySQL 5.7,请按以下步骤操作:
1. 下载并添加存储库
sudo yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
2. 安装 MySQL 5.7 包
与其他使用 yum 的软件包一样安装 MySQL:
yum install mysql-community-server
在安装过程中,yum 可能会提示您导入 MySQL GPG 密钥。键入 y 并按 Enter 键。
下面的章节对于 MySQL 8.0 和 MySQL 5.7 都是相关的
启动 MySQL
安装完成后,启用并启动 MySQL 服务类型:
sudo systemctl enable mysqld
sudo systemctl start mysqld
我们可以通过键入以下命令来检查 MySQL 服务状态
sudo systemctl status mysqld
输出示例:
● mysqld.service – MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since 日 2018-05-27 07:52:03 CST; 1min 8s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 3743 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 3835 (mysqld)
Status: “SERVER_OPERATING”
CGroup: /system.slice/mysqld.service
└─3835 /usr/sbin/mysqld
5 月 27 07:49:51 localhost.localdomain systemd[1]: Starting MySQL Server…
5 月 27 07:52:03 localhost.localdomain systemd[1]: Started MySQL Server.
MySQL 安全
当第一次启动 MySQL 服务器时,为 MySQL 根用户生成一个临时密码。您可以通过运行以下命令找到密码:
sudo grep ‘temporary password’ /var/log/mysqld.log
输出应该看起来像这样:
2018-05-26T23:50:09.270656Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: xwEPP-Fd2zcf
记下密码xwEPP-Fd2zcf,因为下一个命令会要求您输入临时的 root 密码。
运行 mysql_secure_installation 命令来提高 MySQL 安装的安全性:
sudo mysql_secure_installation
输出:
Securing the MySQL server deployment.
Enter password for user root:
输入 xwEPP-Fd2zcf 临时密码后,系统会要求您为 root 用户设置新密码。密码必须至少包含 8 个字符并且至少包含一个大写字母,一个小写字母,一个数字和一个特殊字符。
输出示例:
The existing password for the user account root has expired. Please set a new password.
New password:
Re-enter new password:
该脚本还会要求您删除匿名用户,限制 root 用户对本地计算机的访问权限并删除测试数据库。你应该对所有问题回答“y”(是)。
从命令行连接到 MySQL
要通过终端与 MySQL 进行交互,我们将使用作为 MySQL 服务器软件包的依赖项安装的 MySQL 客户端。
以 root 用户类型登录到 MySQL 服务器:
mysql -u root -p
系统将提示您输入在运行 mysql_secure_installation 脚本时以前设置的 root 密码。
一旦你输入密码,你将会看到如下所示的 mysql shell:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.11 MySQL Community Server – GPL
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
结论
在本教程中,我们向您展示了如何在 CentOS 7 服务器上安装和保护 MySQL 服务器。您现在可以开始学习如何管理 MySQL 用户帐户和数据库,或者在忘记密码的情况下如何重置 MySQL root 密码。
欢迎订阅 Linux 公社的 RSS: