서버를 운영하다 보면 binary 로그와 slow-query.log 가 계속해서 쌓이게 됩니다.
/etc/my.cnf 파일에 아래 부분을 적용하면 로그 조절이 가능합니다.
[mysqld]
log-bin=mysql-bin
expire_logs_days=7
long_query_time=3
slow_query_log=1
slow_query_log_file=slow-query.log
log-bin=mysql-bin 바이너리 로그 파일명을 지정할 수 있습니다.
expire_logs-days=7 최근 일주일 분량만 남기는 옵션입니다.
long_query_time=3 쿼리타임이 3초를 넘어가면 로그를 남깁니다.
slow_query_log=1 슬로우쿼리 로그를 작성하는다는 옵션입니다.
slow_query_log_file=slow-query.log 슬로우쿼리 로그 파일명을 지정할 수 있습니다.
여기까지는 환경설정으로 컨트롤 하는 것에 대해서 알아 보았습니다.
콘솔에서 로그를 지우는 방법에 대해서 알아봅니다.
바이너리 로그를 특정날짜 이전은 지우는 명령어입니다.
# mysql -u유저아이디 -p비밀번호 -e “PURGE MASTER LOGS BEFORE ‘2019-10-31 23:59:59′”
바이너리 로그를 7일 이전 데이터를 지우는 명령어입니다.
# mysql -u유저아이디 -p비밀번호 -e “PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 7 DAY)”