Maison > Article > base de données > Comment compter les lignes dans toutes les tables MySQL à l'aide d'un script Bash
Lors de la gestion d'une base de données MySQL, il est souvent utile d'obtenir le nombre de lignes de toutes les tables pour surveiller la taille et la croissance de votre base de données. Bien que MySQL ne fournisse pas de commande intégrée pour compter directement les lignes de toutes les tables d'une base de données, vous pouvez facilement y parvenir avec un simple script Bash.
Dans cet article, nous expliquerons comment créer et exécuter un script Bash qui interroge chaque table d'une base de données MySQL et renvoie le nombre de lignes (COUNT(1)) pour chaque table.
Tout d'abord, vous devez créer un script Bash qui se connectera à votre serveur MySQL, récupérera toutes les tables et exécutera un SELECT COUNT(1) pour chaque table afin de compter les lignes. Voici le script complet :
#!/bin/bash # MySQL credentials USER="your_username" PASSWORD="your_password" DATABASE="your_database" # Get list of all tables in the database TABLES=$(mysql -u $USER -p$PASSWORD -D $DATABASE -e 'SHOW TABLES;' | tail -n +2) # Loop through each table and get the count for TABLE in $TABLES; do COUNT=$(mysql -u $USER -p$PASSWORD -D $DATABASE -e "SELECT COUNT(1) FROM $TABLE;" | tail -n 1) echo "Table: $TABLE, Count: $COUNT" done
Décomposons les composants de ce script :