MariaDB a été développée en tant que fork logiciel de MySQL en 2009 en réponse à l'acquisition de MySQL par Oracle. MariaDB a l'intention de rester un logiciel libre et open source sous la licence publique générale GNU. Il fait partie de la plupart des offres cloud et est la valeur par défaut de la plupart des distributions Linux.
Dans ce guide, nous apprendrons comment installer et configurer MariaDB dans Debian 11.
Messages associés
- Comment installer Mysql 8 sur Rocky Linux/Centos 8
- Comment installer et configurer mysql 8 sur Ubuntu 20.04
- Comment installer et configurer Mariadb 10 dans Debian 11
Prérequis
Pour suivre, assurez-vous d'avoir :
- Un serveur Ubuntu 20.04 à jour
- Accès root au serveur ou utilisateur avec accès Sudo
- Accès à Internet depuis le serveur
Table des matières
- Système de mise à jour
- Installer Mariadb
- Configurer Mariadb
- Facultatif :Ajuster l'authentification et les privilèges de l'utilisateur
- Tester MariaDB
1. Mettre à jour le système
Avant de continuer, assurons-nous que le serveur Ubuntu est à jour. Commencez par mettre à jour les dépôts, puis effectuez une mise à niveau du système pour vous assurer que tous les packages installés sont à jour :
Dans votre terminal, tapez-les. Le -y
option dans apt upgrade
est de s'assurer que le système ne s'interrompt pas pour que nous acceptions la mise à niveau.
$ sudo apt update
$ sudo apt upgrade -y
2. Installer mariadb
Mariadb se trouve dans les dépôts par défaut pour debian. Utilisez cette commande pour installer le serveur de base de données :
sudo apt install -y mariadb-server
Mariadb sera démarré par défaut.
$ sudo systemctl status mariadb
● mariadb.service - MariaDB 10.3.31 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2021-11-14 16:48:17 EAT; 43s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 50510 (mysqld)
Status: "Taking your SQL requests now..."
Tasks: 31 (limit: 4631)
Memory: 63.8M
CGroup: /system.slice/mariadb.service
└─50510 /usr/sbin/mysqld
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: Processing databases
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: information_schema
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: mysql
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: performance_schema
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: Phase 6/7: Checking and upgrading tables
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: Processing databases
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: information_schema
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: performance_schema
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: Phase 7/7: Running 'FLUSH PRIVILEGES'
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: OK
3. 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. Nous l'utiliserons pour bloquer la racine distante connexions et supprimer les utilisateurs de base de données inutilisés.
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 la base de données actuelle racine le mot de passe. Comme nous n'en avons pas encore configuré, appuyez sur ENTER
pour indiquer "aucun".
L'invite suivante vous demande si vous souhaitez configurer une base de données racine le mot de passe. Tapez N
puis appuyez sur ENTER
. Dans Debian, la racine compte pour MariaDB est étroitement lié à la maintenance automatisée du système, nous ne devons 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. Plus tard, nous expliquerons comment configurer éventuellement 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 ENTER
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 la racine distante logins, et chargez ces nouvelles règles afin que MariaDB respecte immédiatement les modifications que vous avez apportées.
Ceci est la sortie de mon serveur
$ sudo mysql_secure_installation
NOTE: 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, we'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):
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] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB 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.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB 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? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
5. Tester MariaDB
Maintenant que mariadb est configuré et fonctionne, nous devons confirmer qu'il peut accepter les connexions.
Pour tester, connectez-vous à mariadb avec l'utilisateur root – mysql -h 127.0.0.1 -u root -p
Sortie :
$ mysql -h 127.0.0.1 -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 54
Server version: 10.5.12-MariaDB-0+deb11u1 Debian 11
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Vérifier la version de mariadb :
MariaDB [(none)]> SELECT VERSION();
+----------------------------------+
| VERSION() |
+----------------------------------+
| 10.3.31-MariaDB-0ubuntu0.20.04.1 |
+----------------------------------+
1 row in set (0.000 sec)
MariaDB [(none)]>
Pour une vérification supplémentaire, vous pouvez essayer de vous connecter à la base de données à l'aide de mysqladmin
tool, 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 root et retournez la version en utilisant le socket Unix :
sudo mysqladmin version
Vous devriez recevoir une sortie semblable à celle-ci :
$ sudo mysqladmin version
mysqladmin Ver 9.1 Distrib 10.3.31-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Server version 10.3.31-MariaDB-0ubuntu0.20.04.1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 13 min 56 sec
Threads: 6 Questions: 488 Slow queries: 0 Opens: 175 Flush tables: 1 Open tables: 31 Queries per second avg: 0.583
Conclusion
Dans ce guide, vous avez installé MariaDB pour agir en tant que serveur SQL. Au cours du processus d'installation, vous avez également sécurisé le serveur.