Как получить размер базы данных mysql? - программирование

Как получить размер базы данных mysql?

Как получить размер базы данных mysql?
Предположим, что целевая база данных называется "v3".

4b9b3361

Ответ 1

Запустите этот запрос, и вы, вероятно, получите то, что ищете:

SELECT table_schema "DB Name",
        ROUND(SUM(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB" 
FROM information_schema.tables 
GROUP BY table_schema; 

Этот запрос поступает с форумов mysql, где доступны более полные инструкции.

Ответ 2

Это можно определить с помощью следующей команды MySQL

SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 AS "Size (MB)" FROM information_schema.TABLES GROUP BY table_schema

Результат

Database    Size (MB)
db1         11.75678253
db2         9.53125000
test        50.78547382

Получите результат в ГБ

SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 / 1024 AS "Size (GB)" FROM information_schema.TABLES GROUP BY table_schema

Ответ 3

Кроме того, если вы используете phpMyAdmin, вы можете взглянуть на сумму размеров таблиц в нижнем колонтитуле вашей вкладки structure базы данных. Фактический размер базы данных может немного превышать этот размер, однако он согласуется с методом table_schema упомянутым выше.

Скриншот :

enter image description here

Ответ 4

В качестве альтернативы вы можете напрямую перейти в каталог данных и проверить общий размер v3.myd, v3. myi и v3. frm (для myisam) или v3.idb и v3.frm(для innodb).

Ответ 5

Чтобы получить результат в МБ:

SELECT
SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024), 2)) AS "SIZE IN MB"
FROM INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA = "SCHEMA-NAME";

Чтобы получить результат в ГБ:

SELECT
SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 / 1024), 2)) AS "SIZE IN GB"
FROM INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA = "SCHEMA-NAME";

Ответ 6

mysqldiskusage  --server=root:[email protected]  pics

+----------+----------------+
| db_name  |         total  |
+----------+----------------+
| pics     | 1,179,131,029  |
+----------+----------------+

Если он не установлен, его можно установить, установив пакет mysql-utils, который должен быть упакован в большинстве основных дистрибутивов.

Ответ 7

Перейдите в каталог данных mysql и запустите du -h --max-deep = 1 | grep имя базы данных