Lorsque vous gérez des serveurs de bases de données MySQL, l’une des tâches les plus fréquentes que vous effectuerez sera de vous familiariser avec l’environnement. Il s’agit notamment de lister les bases de données qui résident sur le serveur, d’afficher les tables de la base de données ou de récupérer des informations sur les comptes utilisateurs et leurs privilèges .
Cet article montre comment lister les tables d’une base de données MySQL ou MariaDB via la ligne de commande.
Show MySQL Tables #
Pour obtenir une liste des tables d’une base de données MySQL, utilisez l’outil client mysql
pour vous connecter au serveur MySQL et exécuter la commande SHOW TABLES
.
Accéder au serveur MySQL:
mysql -u user -p
Dans le shell MySQL, basculez vers la base de données à l’aide de l’instruction USE
:
USE database_name;
Exécuter la commande suivante pour obtenir une liste de toutes les tables et vues de la base de données actuelle :
SHOW TABLES;
La sortie ressemblera à ceci :
Le modificateur optionnel FULL
affichera le type de table comme deuxième colonne de sortie.
SHOW FULL TABLES;
La sortie ressemblera à ceci:
Pour obtenir une liste des tables sans passer à la base de données, utilisez la clause FROM
ou IN
suivie du nom de la base de données :
SHOW TABLES FROM database_name;
La clause LIKE
peut être utilisée pour filtrer la sortie de la commande SHOW TABLES
selon un modèle spécifique.
SHOW TABLES LIKE pattern;
Par exemple, l’instruction suivante renverra toutes les bases de données dont le nom commence par ‘open’ :
SHOW TABLES LIKE 'permissions%';
+-------------------------------------------+| Tables_in_database_name (permissions%) |+-------------------------------------------+| permissions || permissions_roles || permissions_users |+-------------------------------------------+3 rows in set (0.00 sec)
Le signe de pourcentage (%
) signifie zéro, un ou plusieurs caractères.
Afficher les tables MySQL depuis la ligne de commande #
Pour obtenir des informations sur les tables depuis le shell Linux, vous pouvez utiliser soit la commande mysql -e
, soit la commande mysqlshow
qui affiche les informations sur les bases de données et les tables.
Ceci est particulièrement utile lorsque vous souhaitez travailler avec vos bases de données MySQL à l’aide de scripts shell.
Exécutez la commande suivante sur votre terminal pour afficher une liste de toutes les bases de données :
mysql -u user -p -e 'SHOW TABLES FROM database_name;'
La sortie affichera une liste de toutes les tables :
+----------------------------+| Tables_in_database_name |+----------------------------+| actions || permissions || permissions_roles || permissions_users || roles || roles_users || settings || users |+----------------------------+
Voici un exemple utilisant la commande mysqlshow
:
mysqlshow database_name
Vous pouvez filtrer la sortie avec la commande grep
.
Conclusion #
Pour obtenir des informations sur les tables d’une base de données MySQL, utilisez la commande SHOW TABLES
.