Размер базы данных MySQL Query
Есть ли запрос или функция, которые я могу использовать для определения размера базы данных в MySQL? Если нет, то какой типичный способ найти размер базы данных в MySQL?
Я был googling и нашел SELECT CONCAT(sum(ROUND(((DATA_LENGTH + INDEX_LENGTH - DATA_FREE) / 1024 / 1024),2))," MB") AS Size FROM INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA like '%YOUR_DB_NAME%' ;
И он возвращает базу данных, которая, как я знаю, составляет 400 МБ, чтобы быть 474989023196466.25 MB
!
Ответы
Ответ 1
Попробуйте с помощью этого запроса:
SELECT table_schema AS "Data Base Name",
sum( data_length + index_length ) / 1024 / 1024 AS "Data Base Size in MB"
FROM information_schema.TABLES GROUP BY table_schema ;
Или с этим, если вы хотите ROUND:
SELECT table_schema AS "Data Base Name",
ROUND(SUM( data_length + index_length ) / 1024 / 1024, 2) AS "Data Base Size in MB"
FROM information_schema.TABLES GROUP BY table_schema ;
Ответ 2
Try:
SELECT table_schema, sum(data_length + index_length) FROM information_schema.TABLES GROUP BY table_schema;
Ответ 3
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;