MySQL 是最流行的开源关系数据库管理系统。它快速,易于使用,可扩展,是流行的LAMPLEMP堆栈的组成部分。

在本教程中,我们将向您展示如何在Ubuntu 18.04计算机上安装和保护MySQL。

先决条件

请确保您以具有[sudo]权限的用户身份登录

在Ubuntu上安装MySQL

在撰写本文时,可从Ubuntu官方存储库获得的MySQL的最新版本是 MySQL版本 5.7。

要在Ubuntu服务器上安装MySQL,请执行以下步骤:

首先,通过键入以下内容更新apt包索引:

sudo apt update

然后安装MySQL使用以下命令将其打包:

sudo apt install mysql-server

安装完成后,MySQL服务将自动启动。要检查MySQL服务器是否正在运行,请输入:

sudo systemctl status mysql
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2018-06-20 11:30:23 PDT; 5min ago
 Main PID: 17382 (mysqld)
    Tasks: 27 (limit: 2321)
   CGroup: /system.slice/mysql.service
           `-17382 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

保护MySQL

MySQL服务器软件包附带一个名为mysql_secure_installation的脚本,该脚本可以执行一些与安全性相关的操作。

通过键入以下内容来运行脚本:

sudo mysql_secure_installation

系统将要求您配置 VALIDATE PASSWORD PLUGIN ,该工具用于测试MySQL用户密码的强度并提高安全性。密码验证策略分为三个级别:低,中和强。如果您不想设置验证密码插件,请按ENTER

在下一个提示符下,将要求您为MySQL根用户设置密码。完成该操作后,脚本还将要求您删除匿名用户,限制root用户对本地计算机的访问并删除测试数据库。您应该对所有问题回答“是”。

以root用户身份登录

要从命令行与MySQL服务器进行交互,您可以使用MySQL客户端实用程序,该实用程序作为MySQL服务器软件包的依赖项安装。

在运行MySQL 5.7(及更高版本)的Ubuntu系统中,默认情况下,root用户通过auth_socket插件进行身份验证。

auth_socket插件对通过Unix套接字文件从localhost连接的用户进行身份验证。这意味着您无法通过提供密码来以root用户身份进行身份验证。

以root用户身份登录MySQL服务器:

sudo mysql

将为您提供MySQL Shell,如下所示:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.7.22-0ubuntu18.04.1 (Ubuntu)

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.

如果您想以root用户身份从外部程序 phpMyAdmin 登录MySQL服务器,则有两个选择。

第一个是将认证方法从auth_socket更改为mysql_native_password。您可以通过运行以下命令来做到这一点:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_password';
FLUSH PRIVILEGES;

第二个推荐的选项是创建一个可以访问所有数据库的新管理用户:

GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' IDENTIFIED BY 'very_strong_password';

结论

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

如果您希望通过命令行使用Web界面,则可以安装phpMyAdmin 并通过它管理MySQL数据库和用户。

这则讯息是 如何在Ubuntu-18-04上安装Lnmp系列的一部分。
其他讯息这个系列:  

如何在Ubuntu 18.04上安装Nginx

如何在Ubuntu 18.04上设置Nginx服务器块  

让我们在Ubuntu 18.04上加密Nginx

•如何在Ubuntu 18.04上安装MySQL

如何在Ubuntu 18.04上安装PHP

如果你喜欢我们的内容可以选择在下方二维码中捐赠我们,或者点击广告予以支持,感谢你的支持