Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie finde ich die größte Tabelle in der MySQL-Datenbank?

Manchmal müssen Sie möglicherweise die größte Tabelle in der MySQL-Datenbank im Auge behalten, damit Sie sie optimieren können. Hier ist eine SQL-Abfrage, um die größte Tabelle in der MySQL-Datenbank zu finden. Mit größte meine ich die Größe auf der Festplatte und nicht die Anzahl der Datensätze. Sie können die folgende SQL-Abfrage verwenden, um sie abzurufen. Eine MySQL-Tabellengröße besteht aus 2 Teilen:

1. data_length – Größe der Tabellendatensätze

2. index_length – Größe des Tabellenindex

Dies sind Systemvariablen, die die Informationen als Anzahl von Bytes speichern. Die folgende Abfrage fügt die 2 Variablen für die Tabelle hinzu. Es konvertiert die resultierende Anzahl von Bytes zum leichteren Verständnis in Megabytes (MB). Ersetzen Sie einfach unten $DB_NAME, um es zu verwenden.

Um die größte Tabelle in der MySQL-Datenbank (spezifische Datenbank) zu erhalten, verwenden Sie:

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;

Um die größte Tabelle in der MySQL-Datenbank (von allen Datenbanken) zu erhalten, verwenden Sie:

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;

Diese Abfragen können je nach Anzahl der Tabellen einige Zeit in Anspruch nehmen.