如何在Debian 10中安装MariaDB数据库

在这篇简短的文章中,我们将向您展示如何在Debian 10中安装和保护MariaDB服务器。

MariaDB是一个开源且流行的关系数据库管理系统( RDBMS ),由MySQL的原始开发人员制作。 它是一个快速,可扩展且强大的数据库系统,具有丰富的存储引擎,插件和许多其他工具生态系统,可提供用于访问数据的SQL接口。

MariaDB是一个增强的,直接替代MySQL的组织和公司,如维基百科,WordPress.com,谷歌和许多其他人使用。

在这篇简短的文章中,我们将向您展示如何在Debian 10中安装和保护MariaDB服务器。

需求:

  1. 安装Debian 10(Buster)最小服务器

注意 :如果您以非管理用户身份操作系统,请使用sudo命令获取root权限,如果已安装并运行MySQL ,请在继续之前将其停止并禁用它。

在Debian 10中安装MariaDB服务器

您可以通过运行以下命令从Debian官方存储库安装MariaDB服务器软件包,该命令将安装MariaDB服务器,客户端及其所有依赖项。

# apt install mariadb-server
在Debian 10中安装MariaDB

在Debian 10中安装MariaDB

Debian及其衍生产品(如Ubuntu )中的常见做法是在安装后立即通过systemd自动启动和启用守护进程。 这同样适用于MariaDB服务。

您可以使用以下systemctl命令检查MariaDB服务是否已启动并正在运行。

# systemctl status mariadb  
检查MariaDB状态

检查MariaDB状态

此外,您还需要了解用于在systemd下管理MariaDB服务的其他常用命令,其中包括启动,重新启动,停止和重新加载MariaDB服务的命令,如图所示。

# systemctl start mariadb
# systemctl restart mariadb
# systemctl stop mariadb
# systemctl reload mariadb

在Debian 10中保护MariaDB服务器

MariaDB安装过程涉及保护默认安装,可以通过运行mysql_secure_installation shell脚本来完成,这将允许您通过以下方式为MariaDB实例添加一些额外的安全性:

  • 设置root帐户的密码。
  • 禁用远程root登录。
  • 删除匿名用户帐户。
  • 删除测试数据库,默认情况下可以由匿名用户访问。
  • 并重新加载权限。

要调用安全脚本,请运行以下命令并回答以下屏幕截图中显示的问题。

在Debian 10中保护MariaDB

在Debian 10中保护MariaDB

一旦保护了MariaDB安装,就可以使用root用户密码连接到mysql shell

# mysql -u root -p 

要创建名为"my_test_db"的数据库和具有管理数据库的完全权限的名为"test_user"的用户,请运行以下SQL命令。

MariaDB [(none)]> CREATE DATABASE  my_test_db;
MariaDB [(none)]> GRANT ALL ON my_test_db.* TO 'test_user'@'localhost' IDENTIFIED BY 'test_user_pass_here' WITH GRANT OPTION;
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit;
使用权限创建数据库和用户

使用权限创建数据库和用户

创建新数据库和数据库用户后,尝试使用新用户帐户访问MariaDB shell,并显示分配给用户的所有数据库,如下所示。

# mysql -u test_user -p
MariaDB [(none)]> SHOW DATABASES;
检查新数据库用户

检查新数据库用户

您可能还想阅读有关MariaDB的这些有用的以下文章。

  1. 学习MySQL / MariaDB初学者 - 第1部分
  2. 学习如何使用MySQL和MariaDB的几个函数 - 第2部分
  3. 12适用于Linux的MySQL / MariaDB安全最佳实践
  4. 如何使用'Automysqlbackup'和'Autopostgresqlbackup'工具备份/恢复MySQL / MariaDB和PostgreSQL
  5. 解决MySQL中常见错误的有用提示

这就是现在! 在本指南中,我们展示了如何在Debian 10最小服务器安装中安装和保护MariaDB服务器。 如果您想与我们分享任何问题或信息,请使用下面的评论表与我们联系。