När du arbetar med MySQL kan du behöva få MySQL-tabellstorlek för en specifik tabell i din databas. Det finns inga direkta variabler som lagrar denna information. Du kan använda följande SQL-fråga för att få den. En MySQL-tabellstorlek består av 2 delar:
1. data_length – storleken på tabellposterna
2. index_length – storleken på tabellindexet
Dessa är systemvariabler som lagrar informationen som antal byte. Frågan nedan lägger till de två variablerna för tabellen. Det konverterar det resulterande antalet byte till megabyte (MB) för enklare förståelse. Byt bara ut $DB_NAME och $TABLE_NAME nedan för att använda det.
För att få MySQL-tabellstorlek för en tabell i en databas använd:
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" AND table_name = "$TABLE_NAME";
$DB_NAME – Namn på din MySQL-databas
$TABLE_NAME – Namn på MySQL-tabell
För att få MySQL-tabellstorlek för flera tabeller i en databas använd:
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" AND table_name in ("$TABLE_NAME1","$TABLE_NAME2","$TABLE_NAME3");
$TABLE_NAME1, $TABLE_NAME2 osv – Namn på MySQL-tabeller