Comment installer MySQL sur Debian
Installer MySQL sur Debian permet de créer une infrastructure de base de données (DB) robuste et flexible, compatible avec un large éventail d'applications et de services. Ce SGBD est reconnu pour sa scalabilité, sa fiabilité et sa robustesse. Une fois installé, il améliore l'efficacité opérationnelle et les performances globales de votre infrastructure de données.
Cette solution est particulièrement avantageuse pour les administrateurs, analystes de bases de données et secteurs ayant besoin d'un système fiable pour gérer de grands volumes de données. En outre, les guides complets de MySQL et sa communauté active facilitent le dépannage et l'amélioration continue des opérations.
Dans ce guide, nous présentons la procédure complète d'installation et de configuration de MySQL sur Debian.
Comment installer MySQL sur Debian Copier le lien
Les dépôts par défaut de Debian ne proposent pas le paquet du serveur MySQL. Pour l'installer sur un système Linux, suivez les instructions ci-dessous. Nous allons télécharger la version la plus récente de MySQL.
Étape 1 : Télécharger le paquet MySQL Copier le lien
Récupérez le fichier de configuration du dépôt MySQL au format .deb :
wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb
Remarque : pour vérifier la dernière version, consultez le site du dépôt MySQL.
Étape 2 : Installer le paquet de configuration MySQL Copier le lien
Utilisez ensuite le fichier .deb pour lancer l'installation avec dpkg :
sudo dpkg -i mysql-apt-config_0.8.30-1_all.deb
Répondez aux invites. Par exemple, sélectionnez MySQL Server & Cluster puis appuyez sur Entrée pour lancer la configuration.

Pour choisir une version (comme mysql-8.4-lts), défilez vers le bas et validez avec OK :

Étape 3 : Mettre à jour le système Copier le lien
Mettez à jour l'index des paquets pour prendre en compte les nouvelles infos MySQL :
sudo apt update
Étape 4 : Installer MySQL Copier le lien
L'outil de gestion de paquets de Debian simplifie l'installation. Exécutez :
sudo apt install mysql-server -y
Une interface vous demandera de définir un mot de passe root. Choisissez un mot de passe sécurisé puis validez.

Pour vérifier la version installée :
mysql --version
Étape 5 : Gérer les services Copier le lien
Activez le lancement automatique de MySQL au démarrage :
sudo systemctl enable mysqlDémarrez le service :
sudo systemctl start mysqlVérifiez son statut :
sudo systemctl status mysql
Avant d'ouvrir le port 3306 aux clients, consultez notre guide Créer un tunnel SSH pour MySQL afin d'apprendre à protéger l'accès via SSH plutôt que d'exposer directement MySQL sur Internet.
Étape 6 : Sécuriser l'installation de MySQL Copier le lien
Le mot de passe root défini au départ protège l'accès à l'utilisateur root. MySQL inclut aussi des défauts peu sécurisés (comme des utilisateurs anonymes ou l'accès distant root).
Il est essentiel de renforcer la sécurité après l'installation. Pour cela, utilisez :
sudo mysql_secure_installation
Activez la validation des mots de passe (Y puis Entrée).
Vous serez invité à configurer plusieurs options :
-
Définissez un mot de passe fort pour l’utilisateur root et assurez-vous qu’il est correct. Configurez également la politique de mot de passe du serveur de base de données. Par exemple, tapez
2pour n’autoriser que les mots de passe complexes, puis appuyez sur Entrée. Si l’on vous demande si vous souhaitez modifier le mot de passe root, tapezNpour le conserver, ouYpour le modifier. -
Il est recommandé d’éliminer les utilisateurs anonymes : pour cela, tapez
Ypuis appuyez sur Entrée. -
Par mesure de sécurité, il est préférable de désactiver l’accès distant au compte root. Pour ce faire, tapez
Ypuis appuyez sur Entrée. -
La base de données de test utilisée pour les essais peut être supprimée afin de renforcer la sécurité. Tapez
Yet appuyez sur Entrée. -
Enfin, actualisez les tables de privilèges pour appliquer immédiatement toutes les modifications. Appuyez sur Entrée.

Étape 7 : Accéder à MySQL Copier le lien
Utilisez l'utilitaire client mysql pour établir une connexion et accéder à la console du serveur de base de données.
Accédez maintenant à l'interface shell et exécutez des instructions générales sur le serveur de base de données. Saisissez le nom d'utilisateur root ainsi que le mot de passe défini lors de l'installation sécurisée :
sudo mysql -u root -p
Étape 8 : Opérations de base avec MySQL Copier le lien
Il est préférable de créer une base et un utilisateur distinct plutôt que d'utiliser root. Voici les commandes :
- Créer une base de données :
Commencez par créer une base. Par exemple, pour créer hostmandb, utilisez :
CREATE DATABASE hostmandb;
- Afficher toutes les bases :
Listez toutes les bases pour confirmer que hostmandb a bien été créée :
SHOW DATABASES;
- Créer un nouvel utilisateur :
Créez un utilisateur et attribuez-lui un mot de passe fort. Dans cet exemple, nous utilisons Qwer@1234 pour l'utilisateur minhal. Adaptez ces valeurs selon vos besoins :
CREATE USER 'minhal'@'localhost' IDENTIFIED BY 'Qwer@1234';
- Attribuer les droits à l'utilisateur :
Donnez un accès complet à hostmandb au nouvel utilisateur :
GRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
- Appliquer les privilèges :
Pour appliquer les modifications, rechargez les privilèges :
FLUSH PRIVILEGES;
- Quitter la console :
Pour fermer l'interface MySQL :
EXIT;
- Accéder à la console MySQL avec l'utilisateur créé :
Dans le but de tester l'accès à hostmandb, connectez-vous à MySQL en tant que nouvel utilisateur, dans notre cas minhal :
sudo mysql -u minhal -pVous accéderez à la console après avoir saisi le mot de passe de l'utilisateur minhal lorsqu'on vous le demandera.

Pour vérifier, affichez toutes les bases et confirmez que hostmandb est bien présente :
SHOW DATABASES;Étape 9 : Configurer l'accès distant Copier le lien
Configurer le serveur pour permettre l’accessibilité à distance est nécessaire si un utilisateur doit accéder à MySQL depuis une machine externe. Suivez les étapes ci-dessous :
- Modifier le fichier de configuration :
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
- Remplacer la ligne
bind-addresspar :
bind-address = 0.0.0.0
- Redémarrer MySQL :
sudo systemctl restart mysql
- Donner l'accès à distance à l'utilisateur :
sudo mysql -u root -pGRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Étape 10 : Configurer le pare-feu Copier le lien
Si votre pare-feu est activé, vous devez autoriser le trafic sur le port 3306 utilisé par MySQL. Configurez le pare-feu en suivant les étapes ci-dessous :
- Autoriser le port MySQL :
sudo ufw allow mysql
- Activer UFW :
sudo ufw enable
- Recharger UFW :
sudo ufw reload
Étape 11 : Sauvegarde et restauration Copier le lien
Maintenir des sauvegardes régulières est essentiel pour éviter toute perte de données. MySQL fournit l’utilitaire mysqldump pour créer ces sauvegardes. Voici comment l’utiliser :
- Sauvegarder une base :
Cette commande utilise mysqldump pour créer une sauvegarde de la base hostmandb dans un fichier nommé hostmandb_backup.sql :
sudo mysqldump -u root -p hostmandb> hostmandb_backup.sql
- Sauvegarder toutes les bases :
Pour sauvegarder l’ensemble des bases de données dans un fichier all_databases_backup.sql avec les privilèges root, utilisez :
sudo mysqldump -u root -p --all-databases > all_databases_backup.sql
- Restaurer une base :
Pour restaurer hostmandb à partir du fichier de sauvegarde :
sudo mysql -u root -p hostmandb < hostmandb_backup.sql
Étape 12 : Optimiser les performances (facultatif) Copier le lien
Selon la charge de travail et les ressources du serveur, vous pouvez ajuster certains paramètres pour garantir des performances optimales.
- Ajuster la taille de InnoDB Buffer Pool :
Le buffer pool InnoDB stocke les données et les index. En augmenter la taille peut améliorer significativement les performances. Pour cela, modifiez le fichier de configuration suivant :
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnfAjoutez ou modifiez la ligne suivante :
innodb_buffer_pool_size = 1G
Adaptez la valeur en fonction de la mémoire disponible sur votre serveur.
- Activer la cache des requêtes :
La cache de requêtes enregistre les résultats des requêtes SELECT. L'activer peut améliorer les performances lors de requêtes répétitives. Pour cela, ajoutez ou modifiez ces lignes dans le même fichier .cnf :
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnfquery_cache_type = 1
query_cache_size = 64M
- Optimiser la structure des tables :
Il est conseillé d'optimiser régulièrement la table customers de la base hostmandb pour récupérer de l'espace perdu et améliorer l'efficacité :
USE hostmandb;
OPTIMIZE TABLE customers;
- Analyser les performances :
Les performances des opérations MySQL peuvent être analysées à l'aide d'outils comme MySQL Workbench ou mysqltuner. Pour installer mysqltuner :
sudo apt install mysqltuner
Lancez ensuite l'outil pour obtenir des recommandations :
sudo mysqltuner
Conclusion Copier le lien
Configurer un environnement MySQL est essentiel aujourd'hui. En suivant ce guide, vous pourrez installer et connecter votre base de données en toute sécurité. Cela renforce la sécurité, améliore la maintenance à distance et préserve la confidentialité des données.
Cet article vous a fourni des instructions détaillées pour installer MySQL sur Debian. Il est recommandé de surveiller et d'optimiser régulièrement vos serveurs pour garantir des performances stables.
Hostman propose également des bases de données cloud préconfigurées et prêtes à l'emploi, y compris MySQL dans le cloud.