Red Hat, Alma Linux : Installer et configurer un serveur de base de données MariaDB (8 et 9)
Table des matières
Dans cet article, nous allons voir comment mettre en place un serveur de base de données MariaDB sur RedHat Enterprise Linux 8 ou 9 (la procédure est identique.
Les manipulations proposées sont valides pour les dérivées de RHEL telles qu'Alma Linux, Rocky Linux ou Oracle Linux.
Dans EL 8, par défaut, MariaDB est proposé en version 10.3
Dans EL 9, par défaut, MariaDB est proposé en version 10.5
Il est possible, sur EL 8 d'utiliser MariaDB 10.5.
Pour EL 8 :
Listez les modules MariaDB disponibles :
Désactivez le module 10.3 :
Activez le module 10.5 :
On va installer les 2 paquets qui vont nour fournir le serveur de base de données et les clients en ligne de commande :
Il reste maintenant à activer et démarrer le service mariadb :
On initialise le moteur de base de données :
Sur les versions récentes de MariaDB (10.5) il est proposé d'utiliser le unix_socket. On répondra non pour utiliser des utilisateurs MariaDB et non Linux :
On va pouvoir ainsi définir le mot de passe root (qui est différent du root du système) :
On siupprime les utilisateurs anonymes par sécurité :
On désactive la connexion à distance en tant que root :
On supprime les bases de test :
Si et seulement si vous devez accéder à MariaDB depuis une autre machine; on autorise dans le pare-feu le protocole mysql (port 3306) (ici si la zone de l'interface est public) et on recharge ce dernier :
Le fichier de configuration de MariaDB est /etc/my.cnf et certaines sections sont présentes dans /etc/my.cnf.d/
Plus d'informations sur la configuration de MariaDB ici : https://www.linuxtricks.fr/wiki/mysql-configuration-et-securisation
Un guide des commandes de base est disponible ici : https://www.linuxtricks.fr/wiki/sql-guide-des-commandes-de-base
Introduction
Dans cet article, nous allons voir comment mettre en place un serveur de base de données MariaDB sur RedHat Enterprise Linux 8 ou 9 (la procédure est identique.
Les manipulations proposées sont valides pour les dérivées de RHEL telles qu'Alma Linux, Rocky Linux ou Oracle Linux.
Sélection de la version souhaitée via les modules
Dans EL 8, par défaut, MariaDB est proposé en version 10.3
Dans EL 9, par défaut, MariaDB est proposé en version 10.5
Il est possible, sur EL 8 d'utiliser MariaDB 10.5.
Pour EL 8 :
Listez les modules MariaDB disponibles :
Code BASH :
dnf module list mariadb
Code TEXT :
Name Stream Profiles Summary mariadb 10.3 [d] client, galera, server [d] MariaDB Module mariadb 10.5 client, galera, server [d] MariaDB Module Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Désactivez le module 10.3 :
Code BASH :
dnf module disable mariadb:10.3
Activez le module 10.5 :
Code BASH :
dnf module enable mariadb:10.5
Installation des prérequis
On va installer les 2 paquets qui vont nour fournir le serveur de base de données et les clients en ligne de commande :
Code BASH :
dnf install mariadb-server mariadb
Configuration des services
Il reste maintenant à activer et démarrer le service mariadb :
Code BASH :
systemctl enable --now mariadb.service
Initialisation du moteur de base de données
On initialise le moteur de base de données :
Code BASH :
mysql_secure_installation
Sur les versions récentes de MariaDB (10.5) il est proposé d'utiliser le unix_socket. On répondra non pour utiliser des utilisateurs MariaDB et non Linux :
Code TEXT :
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
On va pouvoir ainsi définir le mot de passe root (qui est différent du root du système) :
Code TEXT :
Enter current password for root (enter for none): OK, successfully used password, moving on... Set root password? [Y/n] Y New password: Re-enter new password: Password updated successfully!
On siupprime les utilisateurs anonymes par sécurité :
Code TEXT :
Remove anonymous users? [Y/n] ... Success!
On désactive la connexion à distance en tant que root :
Code BASH :
Disallow root login remotely? [Y/n] ... Success!
On supprime les bases de test :
Code TEXT :
Remove test database and access to it? [Y/n] - Dropping test database... ... Success! - Removing privileges on test database... ... Success!
Si et seulement si vous devez accéder à MariaDB depuis une autre machine; on autorise dans le pare-feu le protocole mysql (port 3306) (ici si la zone de l'interface est public) et on recharge ce dernier :
Code BASH :
firewall-cmd --permanent --zone=public --add-service=mysql firewall-cmd --reload
Fichiers de configuration
Fichier de configuration my.cnf
Le fichier de configuration de MariaDB est /etc/my.cnf et certaines sections sont présentes dans /etc/my.cnf.d/
Plus d'informations sur MySQL
Plus d'informations sur la configuration de MariaDB ici : https://www.linuxtricks.fr/wiki/mysql-configuration-et-securisation
Un guide des commandes de base est disponible ici : https://www.linuxtricks.fr/wiki/sql-guide-des-commandes-de-base