MySQL : installation sur Ubuntu
MySQL est un système de gestion de base de données relationnelle. Ce guide l’installe sur Ubuntu 24.04 et 26.04 et se limite à l’usage en ligne de commande. Les exemples utilisent des noms génériques (boutique, app).
Version fournie par Ubuntu
Section intitulée « Version fournie par Ubuntu »| Ubuntu | Paquet mysql-server |
Statut |
|---|---|---|
| 24.04 | MySQL 8.0 | Fin de support en avril 2026 : à éviter pour une nouvelle installation |
| 26.04 | MySQL 8.4 LTS | Version à privilégier |
Pour obtenir MySQL 8.4 LTS sur Ubuntu 24.04, utiliser le dépôt APT officiel de MySQL (dev.mysql.com/downloads/repo/apt). Ubuntu propose aussi MariaDB (mariadb-server), un dérivé compatible : les commandes de ces guides s’y appliquent en grande partie, avec le client mariadb.
Installer
Section intitulée « Installer »sudo apt updatesudo apt install mysql-serverVérifier le service et la version :
sudo systemctl status mysqlmysql --versionsudo systemctl enable --now mysql # démarrage automatiquePremier accès
Section intitulée « Premier accès »Sur Ubuntu, le compte root de MySQL s’authentifie par le compte système (plugin auth_socket) : aucun mot de passe, mais il faut sudo.
sudo mysqlSELECT VERSION();SELECT CURRENT_USER();EXIT;Sécuriser l’installation
Section intitulée « Sécuriser l’installation »sudo mysql_secure_installationL’assistant propose de configurer la politique de mots de passe, de supprimer les comptes anonymes et la base de test, et d’interdire la connexion distante de root. Répondre oui aux suppressions et à l’interdiction de root à distance.
Créer un utilisateur d’administration
Section intitulée « Créer un utilisateur d’administration »Plutôt que d’utiliser root, créer un compte pour les opérations courantes (voir Utilisateurs et droits) :
sudo mysql -e "CREATE USER 'admin'@'localhost' IDENTIFIED BY 'mot_de_passe_solide'; GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;"Fichiers et emplacements
Section intitulée « Fichiers et emplacements »| Élément | Emplacement |
|---|---|
| Configuration principale | /etc/mysql/mysql.conf.d/mysqld.cnf |
| Configuration du client | /etc/mysql/conf.d/mysql.cnf |
| Données | /var/lib/mysql |
| Journal d’erreurs | /var/log/mysql/error.log |
| Service | mysql.service |
sudo journalctl -u mysql -n 50 --no-pager # logs du servicesudo tail -n 50 /var/log/mysql/error.logPar défaut, MySQL n’écoute que sur 127.0.0.1 (bind-address = 127.0.0.1) : il n’est pas joignable depuis le réseau.
Mise à jour
Section intitulée « Mise à jour »Les mises à jour de sécurité arrivent avec le système :
sudo apt update && sudo apt upgradeDésinstallation
Section intitulée « Désinstallation »sudo apt purge mysql-server mysql-client mysql-commonsudo apt autoremoveDépannage
Section intitulée « Dépannage »| Symptôme | Piste |
|---|---|
Access denied for user 'root'@'localhost' |
Utiliser sudo mysql (authentification par le compte système) |
Can't connect to local MySQL server through socket |
Le service est arrêté : sudo systemctl start mysql, consulter journalctl -u mysql |
Too many connections |
Réduire les connexions ouvertes par l’application, ou augmenter max_connections |
| Le service ne démarre pas après modification de la configuration | sudo tail /var/log/mysql/error.log : erreur de syntaxe dans le fichier .cnf |
Ubuntu 24.04 et 26.04 : différences à connaître
Section intitulée « Ubuntu 24.04 et 26.04 : différences à connaître »Pour aller plus loin
Section intitulée « Pour aller plus loin »- Documentation officielle : dev.mysql.com/doc/refman/8.4/en
- Suite : Console : le client mysql