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上机实验平台,欢迎大家使用。
要学习本教程,您需要:
正如在介绍中所提到的,用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值进行比较:
验证文件没有损坏或更改后,我们来安装该软件包:
$ sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm
此操作将添加两个新的MySQL yum存储库,我们现在可以使用它们来安装MySQL服务器:
$ sudo yum install mysql-server
按y
确认继续。由于我们刚刚添加了软件包,因此我们会收到提示让我们接受其GPG密钥。按y
下载并完成安装。
使用以下命令启动守护程序:
$ 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包含一个安全脚本,用于更改远程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
工具来验证我们的安装并获取相关信息,该工具是一个允许您运行管理命令的客户端。使用以下命令以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》
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。