Я вижу противоречивые (или дополняющие) ответы о том, как чередовать журналы mySQL, и хочу знать, достаточно ли каждого метода сам по себе, или мне нужно использовать их комбинацию.
Один метод, , предложенный здесь , предписывает следующие шаги:
SET
logging OFF
RENAME
log file SET
logging ON
Другой метод отсюда дает следующие шаги:
ПЕРЕИМЕНОВАТЬ
файл журнала FLUSH LOGS
Документация mySQL упоминает все эти шаги, но не дает понять, являются ли они это разные методы выполнения одного и того же или всех необходимых этапов процесса. Нужно ли мне FLUSH LOGS
и SET
включить / выключить вход или просто выполнить одно из двух?
В документации MySQL, на которую вы ссылались, сказано «используйте любой из них». Но следующие
FLUSH LOGS поддерживают дополнительные модификаторы для включения выборочной очистки отдельных журналов (например, FLUSH BINARY LOGS).
Операция очистки журнала выполняет следующие действия:
Если ведение журнала общего запроса или медленное ведение журнала запросов в файл журнала, сервер закрывает и повторно открывает файл журнала общего запроса или файл журнала медленных запросов.
Если двоичное ведение журнала включено, сервер закрывает текущий двоичный файл журнала и открывает новый файл журнала со следующей последовательностью номер.
Если сервер был запущен с параметром --log-error, чтобы журнал ошибок записывался в файл, сервер закрывается и повторно открывает файл журнала.
не работает в Windows для открытых файлов (см. Как я могу переименовать файлы и папки в Windows, которые используются? , Переименование открытого файла ).
Также в документации говорится
SET GLOBAL general_log = 'OFF'; ...
Этот метод работает на любой платформе