Lorsque vous travaillez avec des environnements d’hébergement basés sur Linux, la gestion des bases de données via la ligne de commande est une compétence cruciale – en particulier si vous utilisez un serveur virtuel ou un serveur dédié sans interface graphique. Dans ce guide, nous allons vous expliquer comment lister toutes les bases de données MySQL à l’aide du terminal. Que vous soyez un administrateur système expérimenté ou un propriétaire de site Web qui apprend les ficelles du métier, cet article vous couvre.

Pourquoi avez-vous besoin de lister les bases de données MySQL ?

Avant de plonger dans les commandes, examinons rapidement quelques scénarios dans lesquels cette commande peut s’avérer utile :

  • Vous gérez plusieurs sites web avec différentes bases de données.
  • Vous devez confirmer qu’une base de données a été créée avec succès.
  • Vous résolvez des problèmes ou nettoyez des bases de données inutilisées.
  • Vous préparez une sauvegarde ou une migration.

Passons maintenant aux commandes proprement dites.

Étape 1 : Accéder au CLI de MySQL

Pour interagir avec MySQL via la ligne de commande, connectez-vous d’abord à l’interpréteur de commandes MySQL :

mysql -u root -p
  • -u root – Spécifie l’utilisateur de MySQL. Remplacez root par un autre utilisateur si nécessaire.
  • -p – Demande le mot de passe (n’incluez pas votre mot de passe directement dans la commande pour des raisons de sécurité).

💡 A stuce : Si votre utilisateur MySQL n’a pas de mot de passe (ce qui n’est pas recommandé en production), vous pouvez ignorer l’option -p.

Étape 2 : Lister toutes les bases de données

Une fois que vous êtes dans le shell MySQL, exécutez simplement :

SHOW DATABASES ;

Vous obtiendrez un résultat similaire à celui-ci :

 -------------------- 
| Base de données
 -------------------- 
| Information_schema
| mysql |
| performance_schema | mysql | mysql | mysql
| sys | sys | sys | sys
| nom_de_la_base_de_données | nom_de_la_base_de_données
 -------------------- 

Chaque ligne représente une base de données stockée sur le serveur MySQL. Certaines d’entre elles (comme information_schema, performance_schema) sont des bases de données système et ne doivent pas être modifiées.

Liste des bases de données sans entrer dans MySQL

Si vous préférez lister les bases de données directement à partir de l’interpréteur de commandes sans ouvrir l’invite MySQL, utilisez :

mysql -u root -p -e 'SHOW DATABASES;'

Cette méthode est utile pour les scripts et les tâches d’automatisation.

Filtrer ou rechercher des noms de bases de données spécifiques

Pour filtrer les résultats et trouver des noms de bases de données spécifiques, vous pouvez combiner la commande avec grep :

mysql -u root -p -e 'SHOW DATABASES;' | grep votre_mot_clé

Remplacez votre_mot_clé par une partie du nom de la base de données. Cette astuce est pratique lorsque vous gérez plusieurs clients ou applications.

Où sont stockées les bases de données MySQL sous Linux ?

Si vous êtes curieux d’en savoir plus sur le stockage physique, les bases de données MySQL sont généralement stockées dans :

/var/lib/mysql/

Chaque dossier à l’intérieur correspond à un nom de base de données. Ne modifiez ou ne supprimez rien ici manuellement à moins de savoir exactement ce que vous faites – utilisez toujours des commandes SQL ou des outils d’administration.

Erreurs courantes et corrections

Erreur : Accès refusé pour l’utilisateur ‘root’@’localhost’

  • Vérifiez à nouveau le nom d’utilisateur et le mot de passe.
  • Assurez-vous que le service MySQL est en cours d’exécution :
sudo systemctl status mysql

Erreur : La commande ‘mysql’ n’a pas été trouvée

  • Installez les outils du client MySQL :
    sudo apt install mysql-client
    

Résumé

Pour lister les bases de données MySQL via la ligne de commande sous Linux :

  • Connectez-vous avec mysql -u root -p
  • Utilisez SHOW DATABASES ; dans l’interpréteur de commandes MySQL
  • Ou exécutez mysql -u root -p -e ‘SHOW DATABASES;’ directement dans le terminal

Cette méthode est rapide, sûre et fonctionne parfaitement dans les environnements SSH – exactement ce dont vous avez besoin pour une gestion efficace des serveurs et des bases de données.