Как узнать размер базы данных MySQL через phpВ этой небольшой статье вы узнаете, как получить размер вашей базы данных (БД) MySQL используя язык программирования PHP. Для начала нам потребуется простая функция formatfilesize(), которая будет преобразовывать размер в байтах в более "читаемый вид". <?php function formatfilesize( $data ) { // bytes if( $data < 1024 ) { return $data . " bytes"; } // kilobytes else if( $data < 1024000 ) { return round( ( $data / 1024 ), 1 ) . "k"; } // megabytes else { return round( ( $data / 1024000 ), 1 ) . " MB"; } } ?>Далее нам естественно необходимо подключиться к самой базе данных MySQL, чтобы узнать ее размер. Определим переменную, которая будет содержать имя нашей базы данных. Замените "databasename" на имя своей базы данных: <?php $dbname = "databasename"; ?>Ну а теперь нам осталось главное - вычислить размер нашей БД. Это делается очень просто - необходимо просто пройтись по каждой таблице БД сложить размер данных и индекса БД: <?php mysql_select_db( $dbname ); $result = mysql_query( "SHOW TABLE STATUS" ); $dbsize = 0; while( $row = mysql_fetch_array( $result ) ) { $dbsize += $row[ "Data_length" ] + $row[ "Index_length" ]; } ?>Сейчас наш размер БД в байтах содержится в переменной $dbsise. Нам осталось лишь воспользваться упомянутой в начале статьи функцией formatfilesize() для форматирования этого размера (разделим его на кило-, мега-): <?php echo "<p>Размер базы данных составляет " . formatfilesize( $dbsize ) . "</p>"; ?>Вот, собственно, и все. Удачи! Автор: Николай Рудченко Источник: //www.codeguru.com.ua/ |