В хранилище базы данных RDS недостаточно места - PullRequest
9 голосов
/ 27 августа 2011

Я только что обновил свое хранилище RDS с 10 ГБ до 20 ГБ, и через пару дней RDS сообщает, что Хранилище снова заполнено.

Выполнение этого запроса в MySQL для той же БД говорит о том, что размер БД составляет 43 МБ

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

Итак, что-то происходит с журналами, которые создает MySQL, или с резервными копиями и т. Д., Которые могут заполнить мое хранилище на производственных серверах.

Пожалуйста, помогите.

Ответы [ 3 ]

5 голосов
/ 30 декабря 2011

Вероятно, это таблица mysql.slow_log, которая занимает столько места.
Вы можете удалить медленные журналы, выполнив следующую команду sql:

CALL mysql.rds_rotate_slow_log
0 голосов
/ 16 мая 2018

Ваше табличное пространство System может занимать пространство.

Вы можете проверить это, используя запрос ниже:

select TABLESPACE_NAME,FILE_NAME,FREE_EXTENTS,TOTAL_EXTENTS,EXTENT_SIZE
from INFORMATION_SCHEMA.files 
where TABLESPACE_NAME in ('innodb_system','innodb_temporary');

Попробуйте перезагрузить базу данных.Это должно решить проблему.

0 голосов
/ 27 августа 2011

В MySQL есть несколько типов журналов.Посмотрите на http://dev.mysql.com/doc/refman/5.1/en/server-logs.html. Но я советую посмотреть на медленные журналы запросов.Если у вас много медленных запросов, ваш журнал будет быстро увеличиваться.Также проверьте параметр --log-query-not-using-indexes.Возможно, вы регистрируете все свои запросы без индексов.

...