如何在CentOS 7上安装MySQL

介绍

MySQL是一个开源数据库管理系统,通常情况下,安装它作为流行的LEMP(Linux,Nginx,MySQL/ MariaDB,PHP / Python /Perl)堆栈的一部分。它使用关系数据库和SQL(结构化查询语言)来管理其数据。

CentOS 7更喜欢用MariaDB,MariaDB是由原始MySQL开发人员管理的MySQL分支,是MySQL的替代品。如果您在CentOS 7上运行yum install mysql,则安装的是MariaDB而不是MySQL。

本教程将介绍如何在CentOS 7服务器上安装MySQL 5.7版。腾讯云开发者实验室提供CenteOS 零基础安装 PHP + MySQL上机实验平台,欢迎大家使用。

准备

要学习本教程,您需要:

  • 具有sudo权限的非root用户的CentOS 7 。

第一步 - 安装MySQL

正如在介绍中所提到的,用Yum命令安装MySQL实际上是安装了MariaDB。要安装MySQL,我们需访问MySQL社区的Yum Repository版块来获取MySQL安装包。

在浏览器中访问:https://dev.mysql.com/downloads/repo/yum/

请注意,这个下载链接不会直接到达文件下载界面。它会到达一个后续页面,邀请您登录或注册帐户。如果您不想创建帐户,可以点击“不,谢谢,只需开始下载”,然后右键单击并复制链接位置,或者您也可以在下面的命令中修改版本号。

找到所需的版本,并根据需要在以下链接中进行选择:

下载页面
$ wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

保存rpm文件后,我们将通过运行md5sum并将其与站点上列出的相应MD5值进行比较来验证下载的完整性:

$ md5sum mysql57-community-release-el7-9.noarch.rpm
1a29601dc380ef2c7bc25e2a0e25d31e  mysql57-community-release-el7-9.noarch.rpm

将此输出与站点上相应的MD5值进行比较:

MD5

验证文件没有损坏或更改后,我们来安装该软件包:

$ sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm

此操作将添加两个新的MySQL yum存储库,我们现在可以使用它们来安装MySQL服务器:

$ sudo yum install mysql-server

y确认继续。由于我们刚刚添加了软件包,因此我们会收到提示让我们接受其GPG密钥。按y下载并完成安装。

第二步 - 启动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在安装后会自动启动。您可以用sudo systemctl disable mysqld更改它。

在安装过程中,会为MySQL root用户生成临时密码。使用以下命令在mysqld.log中找到它:

$ sudo grep 'temporary password' /var/log/mysqld.log
2016-12-01T00:22:31.416107Z 1 [Note] A temporary password is generated for root@localhost: mqRfBU_3Xk>r

记下密码,在下一步中您将需要该密码来保护安装,然后需要更改该密码。默认密码需要12个字符,至少包含一个大写字母,一个小写字母,一个数字和一个特殊字符。

第三步 - 配置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,让我们测试一下。

第四步 - 测试MySQL

我们可以通过连接mysqladmin工具来验证我们的安装并获取相关信息,该工具是一个允许您运行管理命令的客户端。使用以下命令以root-u root)连接到MySQL ,提示输入密码(-p),然后返回版本。

$ mysqladmin -u root -p version

您应该看到与此类似的输出:

mysqladmin  Ver 8.42 Distrib 5.7.16, for Linux on x86_64
Copyright (c) 2000, 2016, 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.

Server version          5.7.16
Protocol version        10
Connection              Localhost via UNIX socket
UNIX socket             /var/lib/mysql/mysql.sock
Uptime:                 2 min 17 sec

Threads: 1  Questions: 6  Slow queries: 0  Opens: 107  Flush tables: 1  Open tables: 100  Queries per second avg: 0.043

这表示您的安装已成功。

结论

在本教程中,我们学习了如何在CentOS 7服务器上安装并保护MySQL。欢迎访问腾讯云访问更多MySQL相关的内容。


参考文献:《How To Install MySQL on CentOS 7》

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算教程系列

如何在Ubuntu 14.04上安装Munin监视工具

Munin是一个系统,网络和基础设施监控应用程序,通过Web浏览器以图形形式提供信息。它是围绕客户端 - 服务器架构设计的,可以配置为监控它所安装的机器(Mun...

1000
来自专栏SpringBoot 核心技术

第二十四章:SpringBoot项目整合JPA多数据源配置

3784
来自专栏Laoqi's Linux运维专列

parted分区GPT格式

2153
来自专栏云计算教程系列

如何在Ubuntu 16.04上安装Bro

Bro是一个开源网络分析框架和安全监控应用程序。它将OSSEC和osquery的一些最佳功能集成到一个包中。

2065
来自专栏linux系统运维

限定某个目录禁止解析php,限制user_agent, php相关配置

3425
来自专栏LinXunFeng的专栏

hexo+github 搭建个人技术博客

1713
来自专栏云计算教程系列

如何在Ubuntu 18.04上安装和配置Postfix

Postfix是一种流行的开源邮件传输代理(MTA),可用于在Linux系统上路由和传递电子邮件。据估计,互联网上约有25%的公共邮件服务器运行Postfix。

2941
来自专栏Django Scrapy

Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息

最简单的一个操作: sudo ufw status(如果你是root,则去掉sudo,ufw status)可检查防火墙的状态,我的返回的是:inactive(...

6836
来自专栏Laoqi's Linux运维专列

使用mysql-proxy配置mysql读写分离

4098
来自专栏云计算教程系列

四步教你搭建保护MySQL服务器!

MySQL是一个着名的开源数据库管理系统,用于存储和检索各种流行应用程序的数据。MySQL是LAMP中的M,LAMP是一组常用的开源软件,其中还包括了Linux...

3943

扫码关注云+社区

领取腾讯云代金券