在Ubuntu 18.04上安装和配置MySQL数据库

在最近的项目中,需要在亚马逊的 AWS 上安装 MySQL 数据库,虽然亚马逊提供了云端免维护的 RDS 产品,可以选择使用 MySQL, 但是对于规模小的,带尝试性质的应用来说,RDS的费用还是太高了。所以选择在 EC2 上自己安装 MySQL。本文记录了安装过程。

安装Ubuntu

顺序执行以下命令:

  1. 更新package index
1
sudo apt-get update
  1. 安装 mysql server
1
sudo apt-get install mysql-server
  1. 验证安装
1
mysql --version

配置 MySQL

安装完成后,需要做一些基本的安全设置。MySQL提供了 mysql_secure_installation 来帮助我们方便的完成这个任务。

  1. 执行脚本设置
1
sudo mysql_secure_installation
  1. 选择使用验证密码模块

系统提示

1
2
3
4
5
6
7
8
9
10
11

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?

Press y|Y for Yes, any other key for No:

选择 y,系统提示选择验证级别:

1
2
3
4
5
6
7
There are three levels of password validation policy:

LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG:

在测试环境中,简单的选择 0

  1. 为root用户设置密码
1
2
3
4
5
Please set the password for root here.

New password:

Re-enter new password:
  1. 删除匿名用户

输入密码后,系统提示是否删除匿名用户。

1
2
3
4
5
6
7
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

输入 y, 删除匿名用户

  1. 限制只能从本机连接数据库
1
2
3
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

为提高安全性,一般先现在只能本机连接,到后期在根据具体的部署情况来逐个开发,因此现在输入输入 y, 限制只能本机连接。

  1. 删除测试数据库
1
2
3
4
5
6
7
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) :

该数据库通常不需要,因此输入 y, 删除测试数据库 - test

1
2
3
4
5
 - Dropping test database...
Success.

- Removing privileges on test database...
Success.
  1. 重新加载权限相关的表
1
2
3
4
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) :

输入 y, 重新加载权限表

1
2
3
Success.

All done!

完成。

本文标题:在Ubuntu 18.04上安装和配置MySQL数据库

文章作者:梅老师

发布时间:2019年07月29日 - 20:07

最后更新:2020年09月16日 - 08:09

原始链接:https://www.mls-tech.info/linux/ubuntu-install-mysql/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。