Page tree

Размер всех баз данных аккаунта можно просмотреть в разделе "Базы данных" панели управления. Отображается как суммарный занятый объем, так и размер каждой базы отдельно.

Обратите внимание, что объем, отображаемый в панели управления, будет больше объема, который вы видите в phpMyAdmin или при скачивании дампа базы.

Это связано с тем, что размер, указанный в панели, включает в себя как сам объем данных в таблицах, так и объем файлов индекса (для организации базы данных в InnoDB). При работе с InnoDB данные, которые вы удаляете из таблиц, фактически не удаляются, а только помечаются как удаленные (после это место будет использовано под запись новых данных), и заявленный в ПУ размер базы не изменяется.

Информацию о фактическом размере базы данных и отдельных таблиц можно получить в интерфейсе phpMyAdmin или с помощью SQL-запросов.

phpMyAdmin

В phpMyAdmin кликните на нужную базу и просмотрите значения в столбце "Размер" у каждой таблицы и в поле "Всего" под списком таблиц.

SQL-запросы

Рассмотрим несколько SQL-запросов.

С помощью запроса ниже можно получить сводную таблицу всех баз данных с указанием размера каждой из них (в мегабайтах):

SELECT table_schema "Data Base Name", sum( data_length + index_length ) / 1024 / 1024 "Data Base Size in MB" 
FROM information_schema.TABLES GROUP BY table_schema ; 

Вывод выглядит следующим образом:

Иногда может быть полезно узнать размер всех таблиц во всех базах и отсортировать их по объему:

SELECT table_schema as `Database`, table_name AS `Table`, 
round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB` 
FROM information_schema.TABLES 
ORDER BY (data_length + index_length) DESC

Пример вывода:

Для вывода подробной информации обо всех таблицах конкретной базы выберите ее в phpMyAdmin в списке слева и выполните запрос: 

SHOW TABLE STATUS

Здесь вы можете просмотреть, например, размер файла индекса для каждой таблицы (в байтах) - столбец index_length.

Похожим образом можно получить информацию о конкретной таблице выбранной базы:

SHOW TABLE STATUS LIKE 'имя_таблицы'

Тогда в выводе будет представлена только интересующая вас таблица.

  • No labels