Очистка бинарного лога mysql | FreeBSD, MYSQL

По дефолту mysql ведет бинарный лог – все транзкции пишутся в файл, и в далнейшем мы имеем возможность восстановить состояние базы на определенный момент. Есть при этом неприятный момент – бинарный лог бстро занимает свободное прострнство на диске. При этом удалять руками файлы типа mysqld-bin.00000Х не стоит – mysql следит за состоянием бинарного лога.

Итак если лог заниимает слишком много места добавляем в /etc/my.cnf строку в секцию [mysqld]:

expire_logs_days=60

Псл этого перезапускаем сервер. Все логи старше 60 дней сервер потрёт.

Проверяем состояние переменной:

mysql> show variables like "%exp%";
+--------------------------+-------+
| Variable_name            | Value |
+--------------------------+-------+
| expire_logs_days         | 60    |
| ft_query_expansion_limit | 20    |
+--------------------------+-------+

Если логи не потрелиcь (или если не хотим перезапускать сервис) – делаем:

mysql> flush logs;