如何在 Ubuntu 20.04 上安装 MariaDB [快速入门]

此教程的早期版本是由Brian Boucheron撰写的(https://www.digitalocean.com/community/users/bboucheron)_

介绍

MariaDB是一个开源的关系式数据库管理系统,通常用作MySQL的替代品,作为流行的LAMP(https://andsky.com/tech/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-20-04)(Linux,Apache,MySQL,PHP/Python/Perl)数据库堆栈的数据库部分。

这个快速启动教程描述了如何在Ubuntu 20.04服务器上安装MariaDB,并将其设置为安全的初始配置,还将涵盖如何为密码访问设置额外的管理帐户。

前提条件

要遵循本教程,您将需要运行 Ubuntu 20.04 的服务器。本服务器应该具有非根管理用户和与 UFW 配置的防火墙。

步骤 1 – 安装 MariaDB

在安裝 MariaDB 之前,請在您的伺服器上更新「apt」的包索引:

1sudo apt update

然后安装包:

1sudo apt install mariadb-server

当从默认存储库安装时,MariaDB 将自动启动运行。

1sudo systemctl status mariadb

您将收到类似于以下的输出:

 1[secondary_label Output]
 2 mariadb.service - MariaDB 10.3.22 database server
 3     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
 4     Active: active (running) since Tue 2020-05-12 13:38:18 UTC; 3min 55s ago
 5       Docs: man:mysqld(8)
 6             https://mariadb.com/kb/en/library/systemd/
 7   Main PID: 25914 (mysqld)
 8     Status: "Taking your SQL requests now..."
 9      Tasks: 31 (limit: 2345)
10     Memory: 65.6M
11     CGroup: /system.slice/mariadb.service
12             └─25914 /usr/sbin/mysqld
13. . .

如果 MariaDB 未运行,则可以使用sudo systemctl start mariadb命令启动。

步骤 2 – 配置 MariaDB

运行与 MariaDB 安装的安全脚本,这将带您通过一系列提示,您可以对 MariaDB 安装的安全选项做出一些更改:

1sudo mysql_secure_installation

第一个提示将要求您输入当前数据库 root 密码. 由于您尚未设置一个密码,请按ENTER来表示没有

1[secondary_label Output]
2. . .
3Enter current password for root (enter for none):

下一个提示会问你是否想设置数据库 root 密码. 在Ubuntu上,MariaDB 的 ** root** 帐户与自动系统维护密切相关,所以我们不应该为该帐户更改配置的身份验证方法。

1[secondary_label Output]
2. . .
3
4Set root password? [Y/n] N

从那里,您可以按Y,然后按ENTER,以接受所有后续问题的默认值,从而删除一些匿名用户和测试数据库,禁用远程 root 登录,然后加载这些新规则。

步骤 3 — (可选) 创建使用密码身份验证的管理用户

在运行 MariaDB 10.3 的 Ubuntu 系统中, root MariaDB 用户被设置为默认使用unix_socket插件进行身份验证,而不是使用密码。由于服务器使用 ** root** 帐户进行日志旋转和开始和停止服务器等任务,最好不要更改 ** root** 帐户的身份验证细节。

为此,请从您的终端打开 MariaDB 提示:

1sudo mariadb

然后创建一个具有 root 权限和基于密码的访问权限的新用户. 请确保更改用户名和密码以匹配您的偏好:

1GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

清除权限,以确保它们在当前会话中存储和可用:

1FLUSH PRIVILEGES;

接下来,输出 MariaDB 壳:

1exit

您可以使用mysqladmin工具测试这个新用户,这个客户端允许您运行管理命令. 以下命令mysqladmin将连接到 MariaDB 作为 admin 用户,并在提示用户密码后返回版本号:

1mysqladmin -u admin -p version

您将收到类似于此的输出:

 1[secondary_label Output]
 2mysqladmin Ver 9.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu on x86_64
 3Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
 4
 5Server version		10.3.22-MariaDB-1ubuntu1
 6Protocol version	10
 7Connection		Localhost via UNIX socket
 8UNIX socket		/var/run/mysqld/mysqld.sock
 9Uptime:			4 min 49 sec
10
11Threads: 7 Questions: 467 Slow queries: 0 Opens: 177 Flush tables: 1 Open tables: 31 Queries per second avg: 1.615

结论

在本指南中,您安装了 MariaDB 关系数据库管理系统,并使用安装的mysql_secure_installation脚本来保护它。

现在你有一个运行和安全的MariaDB服务器,这里有一些下一步的例子,你可以采取与服务器的工作:

Published At
Categories with 技术
comments powered by Disqus