Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment trouver la plus grande table dans la base de données MySQL ?

Parfois, vous devrez peut-être suivre la plus grande table de la base de données MySQL afin de pouvoir l'optimiser. Voici une requête SQL pour trouver la plus grande table de la base de données MySQL. Par plus grand, j'entends la taille sur le disque et non le nombre d'enregistrements. Vous pouvez utiliser la requête SQL suivante pour l'obtenir. Une taille de table MySQL se compose de 2 parties :

1. data_length – taille des enregistrements de la table

2. index_length - taille de l'index de la table

Ce sont des variables système qui stockent les informations sous forme de nombre d'octets. La requête ci-dessous ajoute les 2 variables pour la table. Il convertit le nombre d'octets résultant en méga-octets (Mo) pour une meilleure compréhension. Remplacez simplement $DB_NAME ci-dessous pour l'utiliser.

Pour obtenir la plus grande table de la base de données MySQL (base de données spécifique), utilisez :

SELECT table_name AS "Table", round(((data_length + index_length) / 1024 / 1024), 2) "Table size in MB" FROM information_schema.TABLES WHERE table_schema = "$DB_NAME" order by data_length+index_lenght desc limit 1;

Pour obtenir la plus grande table de la base de données MySQL (de toutes les bases de données), utilisez :

SELECT table_name AS "Table", round(((data_length + index_length) / 1024 / 1024), 2) "Table size in MB" FROM information_schema.TABLES order by data_length+index_lenght desc limit 1;

Ces requêtes peuvent prendre du temps en fonction du nombre de tables.