在CentOS 7上安装MySQL

随着CentOS 7 MySQL的发布,CentOS的存储库中不再提供世界上最流行的开源关系数据库管理系统,MariaDB已成为默认的数据库系统。 MariaDB是MySQL的向后兼容二进制二进制替换版本。

在本教程中,我们将向您展示如何在CentOS 7计算机上安装MySQL。

如果要安装MariaDB而不是MySQL,请查看我们的教程以获取安装说明。

先决条件

在开始本教程之前,请确保您使用具有sudo特权的用户帐户或root用户登录到服务器。 最佳实践是以sudo用户而不是root用户运行管理命令,如果您的系统上没有sudo用户,则可以按照以下说明创建一个。

正如我们在引言中提到的那样,默认CentOS 7存储库中没有MySQL,因此我们将从MySQL Yum存储库中安装软件包。 在以下各节中,我们将向您展示如何安装MySQL 8.0和MySQL 5.7。

你应该 仅安装一个MySQL版本 在您的CentOS 7服务器上。 如果不确定要安装哪个版本,请查阅要在服务器上部署的应用程序的文档。

在CentOS 7上安装MySQL 8.0#

在撰写本文时,MySQL的最新版本是8.0版。 要将其安装在CentOS 7服务器上,请执行以下步骤:

  1. 使用以下命令启用MySQL 8.0存储库:

    sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
  2. 使用yum安装MySQL 8.0软件包:

    sudo yum install mysql-community-server

    在安装过程中,yum可能会提示您导入MySQL GPG密钥。 类型 y 并击中 Enter

在CentOS 7上安装MySQL 5.7#

要在CentOS 7服务器上安装MySQL的先前稳定版本MySQL,版本5.7,请执行以下步骤:

  1. 使用以下命令启用MySQL 5.7存储库:

    sudo yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
  2. 使用以下命令安装MySQL 5.7软件包:

    使用yum和其他软件包一样安装MySQL:

    sudo yum install mysql-community-server

以下部分与MySQL 8.0和MySQL 5.7相关。

启动MySQL#

安装完成后,启动MySQL服务并启用以下命令以在启动时自动启动:

sudo systemctl enable mysqldsudo 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 Wed 2018-05-23 11:02:43 UTC; 14min ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 4293 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 4310 (mysqld)
   Status: "SERVER_OPERATING"
   CGroup: /system.slice/mysqld.service
           └─4310 /usr/sbin/mysqld

保护MySQL#

首次启动MySQL服务器时,将为MySQL根用户生成一个临时密码。 您可以通过运行以下命令来找到密码:

sudo grep 'temporary password' /var/log/mysqld.log

输出应如下所示:

2018-05-23T10:59:51.251159Z 5 [Note] [MY-010454] [Server] A temporary password is generated for [email protected]: q&0)V!?fjksL

记下该密码,因为下一条命令将要求您输入临时root密码。

跑过 mysql_secure_installation 命令以提高我们的MySQL安装的安全性:

sudo mysql_secure_installation
Securing the MySQL server deployment.

Enter password for user root:

输入临时密码后,将要求您为root用户设置新密码。 密码长度至少为8个字符,并且至少包含一个大写字母,一个小写字母,一个数字和一个特殊字符。

The existing password for the user account root has expired. Please set a new password.

New password:

Re-enter new password:

该脚本还将要求您删除匿名用户,限制root用户对本地计算机的访问并删除测试数据库。 您应该对所有问题回答“是”(是)。

从命令行连接到MySQL

为了通过终端与MySQL交互,我们将使用MySQL客户端,该客户端作为MySQL服务器软件包的依赖项安装。

要以root用户身份登录到MySQL服务器,请输入:

mysql -u root -p

系统提示您输入先前设置的root密码时, mysql_secure_installation 脚本已运行。

输入密码后,将显示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.

创建数据库

连接到MySQL Shell之后,您可以通过键入以下命令来创建新数据库:

CREATE DATABASE new_database;
Query OK, 1 row affected (0.00 sec)

创建表

现在我们已经创建了数据库,我们可以创建一个表来存储一些数据。

在运行用于创建表的SQL语句之前,我们需要连接到数据库:

use new_database;

在此示例中,我们将创建一个名为 contacts 三个领域 idnameemail

CREATE TABLE contacts (
  id INT PRIMARY KEY,
  name VARCHAR(30),
  email VARCHAR(30)
);
Query OK, 1 row affected (0.00 sec)

结论#

在本教程中,我们向您展示了如何在CentOS 7服务器上安装和保护MySQL服务器。 我们还向您展示了如何连接到MySQL Shell以及如何创建新的数据库和表。

现在您的MySQL服务器已启动并正在运行,并且您知道如何从命令行连接到MySQL服务器,您可能需要查看以下指南:

  • 如何管理MySQL用户帐户和数据库
  • 如何重设MySQL root密码
  • 如何创建一个MySQL数据库
  • 如何创建MySQL用户帐户和授予权限
  • 如何显示MySQL用户
  • 如何使用Mysqldump备份和还原MySQL数据库

如果您更喜欢Web界面而不是命令行,则可以安装phpMyAdmin并通过它管理MySQL数据库。

mysql centos

这篇文章是在CentOS 7系列上安装LAMP堆栈的一部分。本系列的其他文章:

•如何在CentOS 7上安装Apache(2018年4月27日)•在CentOS 7上安装MySQL(2018年5月23日)•如何在CentOS 7上设置Apache虚拟主机•2018年8月17日•在CentOS 7上通过加密来保护Apache

Sidebar