Сегодня на одной машине с MySQL-сервером файловая система оказалась забита более 90%..
Зашёл туда, проверил, и оказалось, что почти всё место занято самим MySQL’ем – в директории /var/lib/mysql/ .
Но не просто базой данных, а binlog’ами. Их буквально за сегодня собралось слишком много, и каждый больше гигабайта..
В /etc/my.cnf удаление binlog’ов сконфигурировано через 5 дней:
expire_logs_days=5
Решил удалить все ненужные файлы, но, типа, это не рекомендуется делать вручную в файловой системе, а предлагается удалять из самого MySQL командой
PURGE BINARY LOGS TO 'файл_до_которого_удалить';
Проверил, который из этих файлов используется сейчас самим master-сервером, и какие ещё считываются с него slave-серверами. Везде оказался один и тот же файл, и тогда все прежние я удалил. Теперь в файловой системе занято всего 27%. Выходит, что сама база данных не сильно большая, но почему-то очень много непростых операций сегодня над ней производили..
Оригинал этой записи в личном блоге.

