В MySQL предусмотрено наличие нескольких файлов журналов, позволяющих следить за всеми аспектами работы системы (see Раздел 4.9, «Файлы журналов MySQL»). Правда, иногда приходится проверять, не занимают ли журналы лишнего места, и удалять ненужные.
При работе с журналами MySQL, вам, вероятнее всего, понадобится удалять их или создавать их резервные копии, и указывать MySQL записывать данные журналов в новые файлы (see Раздел 4.4.1, «Резервное копирование баз данных»).
В системе Linux (Red Hat) для этого можно использовать сценарий
mysql-log-rotate. При установке MySQL с дистрибутива RPM этот сценарий
устанавливается автоматически. Обратите внимание: использовать журнал для
репликации необходимо с максимальной аккуратностью!
В других ОС вы можете самостоятельно создать небольшой сценарий для
обработки журналов, запускаемый из cron.
Заставить MySQL создать новый файл журнала можно с помощью команды
mysqladmin flush-logs или SQL-команды FLUSH LOGS. При работе с MySQL
версии 3.21 пользоваться можно только командой mysqladmin refresh.
Эта команда выполняет следующие действия:
Если используется стандартный журнал (
--log) или журнал медленных запросов (--log-slow-queries), файл журнала (mysql.logи`hostname`-slow.logпо умолчанию) закрывается и открывается вновь.Если используется журнал обновлений (
--log-update), файл журнала закрывается, после чего создается новый файл с большим номером.
При использовании одного журнала обновлений нужно очистить журналы и перенести их старые файлы в резервную копию. При использовании обычной процедуры ведения журналов для этого нужно выполнить примерно следующую последовательность команд:
shell> cd mysql-data-directory shell> mv mysql.log mysql.old shell> mysqladmin flush-logs
а затем сделать резервную копию файла mysql.old и удалить его.