Как узнать через php код сколько весит бд или только какая нибудь таблица и сколько фрагментировано мб?
Спасибо, но у меня есть проблема вот мой запрос PHP: <?php $result = mysql_query("SHOW TABLE STATUS FROM $bd LIKE '$tbl'"); while($array = mysql_fetch_array($result)) { $total = $array[Data_length]+$array[Index_length]; echo ' Table: '.$array[Name].'<br /> Data Size: '.$array[Data_length].'<br /> Index Size: '.$array[Index_length].'<br /> Total Size: '.$total.'<br /> Average Size Per Row: '.$array[Avg_row_length].'<br /><br /> '; echo $array['Data_free']; } ?> Всё выводит кроме $array['Data_free']; никто не знает в чё проблема?
ну, так посмотри [sql]SELECT DATA_FREE FROM `information_schema`.`TABLES` WHERE `TABLE_SCHEMA` LIKE 'БАЗА' AND `TABLE_NAME` LIKE 'ТАБЛИЦА'[/sql]остальные параметры там тоже есть
Сделал так, но так слишком долго грузится. Может как нибудь по другому можно? PHP: <?php $result = mysql_query("SHOW TABLE STATUS FROM $bd_base"); while($row = mysql_fetch_array($result)) { $sql=mysql_query("SELECT DATA_FREE FROM `information_schema`.`TABLES` WHERE `TABLE_SCHEMA` LIKE '$bd_base' AND `TABLE_NAME` LIKE '$row[Name]'"); $ressq=mysql_result($sql,0,0); $sz = $sz+$ressq; } ?>
Там нет общего размера data_free. А мне надо общий размер data_free в определённой бд. Но выше приведённый мною пример долго загружается. Если сделать такой запрос PHP: <?php $sql=mysql_query("SELECT DATA_FREE FROM `information_schema`.`TABLES` WHERE `TABLE_SCHEMA` LIKE '$bd_base'); while($row = mysql_fetch_array($sql)) { $sz = $sz+$row[data_free]; } То не получается, что тут неправельно?
эх, пора озверин пить PHP: <?php $db = new mysqli('localhost', 'user', 'password'); $sql = 'SELECT SUM( DATA_FREE ) FROM `information_schema`.`TABLES` WHERE `TABLE_SCHEMA` LIKE "test_db"'; list($data_free) = $db->query($sql) -> fetch_row(); echo round($data_free/1024,2).' Kib';