Mysqladmin
| Fiche express | |
|---|---|
| Type | Outil client d'administration MySQL en ligne de commande |
| Fourni avec | le paquet client MySQL/MariaDB |
| Voir aussi | Mysql · Reset password · Kill |
mysqladmin est l'outil client dédié aux opérations d'administration courantes du serveur MySQL/MariaDB : vérification d'état, gestion des bases, purge de caches internes, arrêt propre du service — sans passer par le client SQL interactif.
Syntaxe générale :
mysqladmin -u UTILISATEUR -p COMMANDE [ARGUMENT]
Vérification d'état
| Commande | Effet |
|---|---|
mysqladmin ping |
Vérifie que le serveur répond |
mysqladmin status |
Affiche un résumé des variables de statut globales |
mysqladmin extended-status |
Affiche l'ensemble des variables de statut |
mysqladmin variables |
Affiche les variables de configuration et leurs valeurs actuelles |
mysqladmin version |
Affiche la version du serveur |
mysqladmin processlist |
Liste les threads/connexions actifs |
Exemples :
mysqladmin -u root -p ping mysqladmin -u root -p version mysqladmin -u root -p status mysqladmin -u root -p extended-status mysqladmin -u root -p variables mysqladmin -u root -p processlist
Gestion des bases
Créer une base :
mysqladmin create nom_base
Supprimer une base (avec confirmation interactive) :
mysqladmin drop nom_base
Threads et connexions
Tuer un thread client spécifique (identifiant obtenu via processlist) :
mysqladmin kill 50
Voir aussi la commande système Kill pour la terminaison de processus au niveau OS (différent : ceci tue une connexion MySQL, pas un processus).
Purge de caches internes (flush)
| Commande | Effet |
|---|---|
flush-hosts |
Vide le cache DNS interne et les hôtes bloqués pour trop d'erreurs de connexion |
flush-logs |
Ferme et rouvre les journaux (rotation des logs) |
flush-privileges |
Recharge les tables de droits (équivalent de reload)
|
flush-status |
Réinitialise la plupart des variables de statut |
flush-tables |
Ferme les descripteurs de fichiers table ouverts (attend la fin des connexions en cours) |
flush-threads |
Vide le cache de threads |
refresh |
Équivalent combiné de flush-hosts + flush-logs
|
Exemples :
mysqladmin -u root -p flush-hosts mysqladmin -u root -p flush-tables mysqladmin -u root -p flush-threads mysqladmin -u root -p flush-logs mysqladmin -u root -p flush-privileges mysqladmin -u root -p flush-status
Réplication
mysqladmin start-slave mysqladmin stop-slave
Terminologie historique de MySQL (« master »/« slave ») — MySQL 8.0.22+ et les versions récentes de MariaDB proposent les alias start-replica/stop-replica (à vérifier selon la version exacte du serveur ciblé).
Mot de passe
Changer le mot de passe de l'utilisateur connecté :
mysqladmin password '<nouveau_mot_de_passe>'
Sous-commande historique, encore présente mais dépréciée depuis MySQL 5.7.6 au profit de ALTER USER ... IDENTIFIED BY ... exécuté depuis le client SQL — voir Reset password.
L'option old-password (ancien format de hash sur 16 caractères au lieu de 41) est un vestige de MySQL antérieur à 4.1, retiré des versions modernes : à ignorer sur toute installation actuelle.
Arrêt du serveur
Arrêt propre du démon mysqld (préférable à un kill du processus, qui risque de corrompre des données non flushées) :
mysqladmin shutdown
Voir aussi
- Mysql — page hub
- Reset password — pour un mot de passe root perdu (mysqladmin ne peut rien y faire sans le mot de passe actuel)
- Kill — terminaison de processus au niveau système d'exploitation