Comment installer MariaDB sur Ubuntu 22.04

De Get Docs
Aller à :navigation, rechercher

Introduction

MariaDB est un système de gestion de base de données relationnelle open source, couramment utilisé comme alternative à MySQL en tant que partie base de données du populaire LAMP (Linux, Apache, MySQL, PHP/Python/Perl ) pile. Il est destiné à remplacer MySQL.

La version courte de ce guide d'installation se compose de ces trois étapes :

  • Mettez à jour votre index de package en utilisant apt
  • Installez le package mariadb-server en utilisant apt. Le package utilise également des outils associés pour interagir avec MariaDB
  • Exécutez le script de sécurité mysql_secure_installation inclus pour restreindre l'accès au serveur
sudo apt update
sudo apt install mariadb-server
sudo mysql_secure_installation

Ce tutoriel explique comment installer MariaDB sur un serveur Ubuntu 22.04 et vérifier qu'il est en cours d'exécution et qu'il a une configuration initiale sûre.

Conditions préalables

Étape 1 - Installation de MariaDB

Au moment d'écrire ces lignes, les référentiels APT par défaut d'Ubuntu 22.04 incluent MariaDB version 10.5.12.

Pour l'installer, mettez à jour l'index des packages sur votre serveur avec apt :

sudo apt update

Installez ensuite le package :

sudo apt install mariadb-server

Ces commandes installeront MariaDB, mais ne vous inviteront pas à définir un mot de passe ni à apporter d'autres modifications à la configuration. Étant donné que la configuration par défaut laisse votre installation de MariaDB non sécurisée, vous utiliserez un script fourni par le package mariadb-server pour restreindre l'accès au serveur et supprimer les comptes inutilisés.

Étape 2 - Configuration de MariaDB

Pour les nouvelles installations de MariaDB, l'étape suivante consiste à exécuter le script de sécurité inclus. Ce script modifie certaines des options par défaut les moins sécurisées pour des éléments tels que les connexions distantes root et les exemples d'utilisateurs.

Exécutez le script de sécurité :

sudo mysql_secure_installation

Cela vous guidera à travers une série d'invites où vous pourrez apporter des modifications aux options de sécurité de votre installation MariaDB. La première invite vous demandera d'entrer le mot de passe actuel de la base de données root. Comme vous n'en avez pas encore configuré, appuyez sur ENTER pour indiquer « aucun ».

OutputNOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, you'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):

Il vous sera demandé si vous souhaitez passer à l'authentification par socket Unix. Dans les versions précédentes de MariaDB, l'utilisateur root MariaDB est configuré pour s'authentifier à l'aide du plug-in unix_socket par défaut plutôt qu'avec un mot de passe. Cela a permis une plus grande sécurité et une plus grande convivialité dans de nombreux cas, mais cela a également compliqué les choses lorsque vous deviez autoriser des droits d'administration pour des programmes externes (par exemple, phpMyAdmin).

Maintenant, vous avez l'option à l'avance, et puisque vous avez déjà un utilisateur sudo correctement configuré, tapez n puis appuyez sur ENTER.

Output. . .
Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] n

L'invite suivante vous demande si vous souhaitez configurer un mot de passe root pour la base de données. Sur Ubuntu, le compte root pour MariaDB est étroitement lié à la maintenance automatisée du système, vous ne devez donc pas modifier les méthodes d'authentification configurées pour ce compte.

Cela permettrait à une mise à jour de package de casser le système de base de données en supprimant l'accès au compte administratif. Tapez n puis appuyez sur ENTER.

Output. . .
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] n

Plus tard, vous expliquerez comment configurer un compte administratif supplémentaire pour l'accès par mot de passe si l'authentification par socket n'est pas appropriée pour votre cas d'utilisation.

À partir de là, vous pouvez appuyer sur Y puis sur ENTER pour accepter les valeurs par défaut pour toutes les questions suivantes. Cela supprimera certains utilisateurs anonymes et la base de données de test, désactivera les connexions à distance root et chargera ces nouvelles règles afin que MariaDB implémente immédiatement les modifications que vous avez apportées.

Avec cela, vous avez terminé la configuration de sécurité initiale de MariaDB. La prochaine étape est facultative, mais vous devez la suivre si vous préférez vous authentifier auprès de votre serveur MariaDB avec un mot de passe.

Étape 3 - Tester MariaDB

Lorsqu'il est installé à partir des référentiels par défaut, MariaDB commencera à s'exécuter automatiquement. Pour le tester, vérifiez son état.

sudo systemctl status mariadb

Vous recevrez une sortie semblable à celle-ci :

Output● mariadb.service - MariaDB 10.5.12 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-03-11 22:01:33 UTC; 14min ago
       Docs: man:mariadbd(8)
             https://mariadb.com/kb/en/library/systemd/
. . .

Si MariaDB n'est pas en cours d'exécution, vous pouvez le démarrer avec la commande sudo systemctl start mariadb.

Pour une vérification supplémentaire, vous pouvez essayer de vous connecter à la base de données à l'aide de l'outil mysqladmin, qui est un client qui vous permet d'exécuter des commandes d'administration. Par exemple, cette commande indique de se connecter à MariaDB en tant que root en utilisant le socket Unix et de renvoyer la version :

sudo mysqladmin version

Vous recevrez une sortie semblable à celle-ci :

Outputmysqladmin  Ver 9.1 Distrib 10.5.12-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Server version        10.5.12-MariaDB-1build1
Protocol version    10
Connection        Localhost via UNIX socket
UNIX socket        /run/mysqld/mysqld.sock
Uptime:            15 min 53 sec

Threads: 1  Questions: 482  Slow queries: 0  Opens: 171  Open tables: 28  Queries per second avg: 0.505

Conclusion

Dans ce guide, vous avez installé le système de gestion de base de données relationnelle MariaDB et l'avez sécurisé à l'aide du script mysql_secure_installation avec lequel il a été installé. Vous aviez également la possibilité de créer un nouvel utilisateur administratif qui utilise l'authentification par mot de passe avant de tester la fonctionnalité du serveur MariaDB.

Maintenant que vous avez un serveur MariaDB en cours d'exécution et sécurisé, voici quelques exemples d'étapes suivantes que vous pouvez suivre pour travailler avec le serveur :