Назад | Перейти на главную страницу

Реплике AWS MySQL RDS внезапно не хватает места на диске

У нас есть экземпляр MySQL RDS, работающий на AWS, с репликой. Из CloudWatch я вижу, что произошло внезапное сокращение свободного места для хранения из общего выделенного пространства для хранения в 100 ГБ. Как я могу узнать, что использует хранилище? И средства правовой защиты, чтобы попытаться освободить место?

Свободное место на диске внезапно упало с 63 ГБ до 4 ГБ.

График CloudWatch

Я запрашивал реплику и подозреваю, что случайное перекрестное соединение, которое позже было отменено, вызывало проблему, поскольку запрос перекрестного соединения был запущен примерно во время отбрасывания. Легкие запросы все еще выполняются, более крупные запросы больше не выполняются.

Ошибка клиента SQL для более тяжелых запросов теперь отображается:

Ошибка SQL [3] [HY000]: Ошибка записи файла '/ rdsdbdata / tmp / MYSKecWe' (код ошибки: 28 - на устройстве не осталось места)

Также есть предупреждение в консоли AWS.

Свободный объем хранилища для инстанса БД: smmainro низкий и составляет 3% от выделенного хранилища [выделенное хранилище: 99,26 ГБ, бесплатное хранилище: 3,35 ГБ]

Я выполнил приведенный ниже запрос, чтобы узнать, сколько места используется базой данных. Результаты показывают data_length как 20 612MB, index_length как 11 954MB и data_free как 614 996MB. Таким образом, похоже, что общая база данных имеет размер около 32,5 ГБ, что соответствует тому, сколько данных занято главной базой данных. Представляет ли data_free данные, которые могут быть доступны, но в настоящее время недоступны?

SELECT 
    sum((data_length)/1024/1024) AS data_mb,
    sum((index_length)/1024/1024) AS index_mb,
    sum((data_free)/1024/1024) AS free_mb
FROM 
    information_schema.tables

Освободит ли перезагрузка главной базы данных пространство, занятое временными данными? Из некоторого чтения кажется невозможным просто перезагрузить базу данных реплики, это правильно?

К вашему сведению: запущена версия MySQL 5.7.19-log. Вот некоторые значения из запуска SHOW GLOBAL VARIABLES:

innodb_buffer_pool_size 24,696,061,952 (24GB)
innodb_ft_cache_size    8,000,000 (8MB)
innodb_ft_result_cache_limit    2,000,000,000 (2GB)
innodb_ft_total_cache_size 640,000,000 (640MB)
innodb_log_file_size    134,217,728 (134MB)
innodb_max_undo_log_size    1,073,741,824 (1GB)
innodb_online_alter_log_max_size    134,217,728 (134MB)
max_binlog_cache_size 18,446,744,073,709,547,520 (18.5 Billion GB)
query_cache_limit   1048576
query_cache_size    1048576