Часто при разработке приложений для взаимодействия с базой данных MySql возникает необходимость опепративно узнать её размер не через интерфейс админки, а средствами скрипта на php что бы в случае превышения лимита выполнить необходимые деёствия на сайте или сигнализировать администратору.
Здесь я привожу небольшой класс для работы с базой данных через функционал php mysqli который позволит соединится с базой данных, узнать её размер в байтах и отформатировать результат для удобочитаемости в Кб, Мб, Гб.
Функция connect() устанавливает соединение с базой данных и оперделяет кодировку.
Функция formatfilesize( $data ) форматирует числовое представление размера базы данных.
И ключевая функция bazaSize() собственно вычисляет и возвращает размер базы данных, с помощью внутренних вызовов пердыдущих функций осуществляет соединение и форматирование результата.
Подсчёт размера базы данных осуществляется суммарным значением веса каждой таблицы + индексной составляющей.