Při práci s MySQL možná budete muset získat velikost databáze MySQL pro všechny nebo konkrétní databázi. Neexistují žádné přímé proměnné, které by tyto informace uchovávaly. K jeho získání můžete použít následující SQL dotaz. Velikost databáze MySQL se skládá ze 2 částí:
1. data_length – velikost záznamů tabulky
2. index_length – velikost indexu tabulky
Jedná se o systémové proměnné, které ukládají informace jako počet bajtů. Dotaz níže přidá 2 proměnné pro databázi. Pro snadnější pochopení převádí výsledný počet bajtů na megabajty (MB). Chcete-li jej používat, stačí nahradit $DB_NAME níže.
Získejte velikost databáze MySQL pro jednu databázi
SELECT table_schema "Data Base Name", SUM( data_length + index_length) / 1024 / 1024 "Database Size in MB" FROM information_schema.TABLES where table_schema="$DB_NAME" ;
$DB_NAME – Název vaší databáze MySQL
Získejte velikost databáze MySQL pro více databází
SELECT table_schema "Data Base Name", SUM( data_length + index_length) / 1024 / 1024 "Database Size in MB" FROM information_schema.TABLES where table_schema in ("$DB_NAME1","$DB_NAME2","$DB_NAME3") ;
$DB_NAME1, $DB_NAME2, $DB_NAME3 – Názvy vašich databází MySQL