Размер базы данных в MySQL (MariaDB)

Обычно для развертывания той или иной системы на основе веб технологий (PHP) используем базу данных MySQL (MariaDB). На одном из подобных проектов мне понадобилось определить размер базы данных для проекта в MySQL (MariaDB).

Пошел простым путем. Размер папки где хранятся базы MySQL:

du -h /var/lib/mysql

Мне показалось что цифры завышены и так оценивать наверно, правильнее именно инструментами самой СУБД. Подключаемся к mysql:

mysql -u root -p

Запрашиваем размер баз данных (Результат в Мб, MySQL отдает ответ в байтах):

SELECT table_schema AS "База данных", ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Размер в Мб" FROM information_schema.TABLES GROUP BY table_schema;

Результат в Гб — для больших проектов:

SELECT table_schema AS "База данных", ROUND(SUM(data_length + index_length) / 1024 / 1024 / 1024, 2) AS "Размер в Гб" FROM information_schema.TABLES GROUP BY table_schema;

Определяем размер таблиц внутри самой базы:

SELECT table_name AS "Таблицы", ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Размер в Мб" FROM information_schema.TABLES WHERE table_schema = "тут имя нужной базы" ORDER BY (data_length + index_length) DESC;

Top