Я включил журнал запросов MySQL для проверки того, какие запросы выполняются из нашего приложения в определенный промежуток времени.
Я хотел, чтобы журналы обновлялись в течение 3 дней один раз, поэтому я включил срок действия журнала как 3 дня.
Но когда я увидел файл журнала, он был там с момента включения журнала запросов, который длился больше недели.
Из-за этого размер файла журнала увеличился до размера файла более 2 ГБ, из которого не удалось получить информацию.
Есть ли возможность включить, чтобы файл журнала запросов был обновлен / очищен через несколько дней.
Я использую сервер MySQL 5.0.24.
expire_logs_days отвечает только за ротацию двоичных журналов.
Возможно, вам придется самостоятельно удалить журнал ошибок.
Попробуйте сделать это (пример: /var/log/mysqld.log - это журнал ошибок)
Шаг 01) Создайте сценарий, чтобы скопировать журнал ошибок и заархивировать его, назвав его по дате и времени (вызовите сценарий /root/rotate_mysqld_log.sh)
cd /var/log
DT=`date +"%Y%m%d_%H%M%S"`
BACKUP_ERROR_LOG=mysqld_${DT}.log.gz
cat mysqld.log | gzip > ${BACKUP_ERROR_LOG}
echo -n > mysqld.log
Шаг 02) сделайте /root/rotate_mysqld_log.sh исполняемым
chmod +x /root/rotate_mysqld_log.sh
Шаг 03) Добавьте скрипт в crontab (Поверните в полночь)
0 0 * * * /root/rotate_mysqld_log.sh
Попробуйте !!!