MySQL Binary log 지우기
MySQL Binary log 지우기
mysql 을 운영하다 보면 바이너리 로그가 쌓인다.
하드 공간을 확보하고자 한다면 이 로그를 지워서 공간을 확보할 수가 있다.
그리고 일정 기간이전 로그를 자동으로 삭제하는 방법에 대해서 알아보자.
우선 로그파일이 어느정도인지 확인을 해보자.
[root@conoha mysql]# ls -l /var/lib/mysql/mysql-bin*
-rw-rw---- 1 mysql mysql 1246326 Apr 26 09:42 mysql-bin.000101
-rw-rw---- 1 mysql mysql 7824 Apr 28 09:45 mysql-bin.000102
-rw-rw---- 1 mysql mysql 38 Apr 28 09:43 mysql-bin.index
mysql-bin.000101, mysql-bin.000102 파일이 바이너리 로그파일이다.
이번에는 로그를 한번 지워보자.
# mysql -uroot -p비밀번호 -e "PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 1 DAY)"
하루전 로그를 지우라는 의미이다.
그리고 다음은 mysqladmin 툴로 로그를 지우는 명령이다.
# mysqladmin -uroot -p비밀번호 flush-logs
이번엔 7일 이전 로그를 지워주는 옵션이다.
# vi /etc/my.cnf 파일을 열어서 [mysqld] 영역에 아래 내용을 추가하고 저장
expire_logs_days=7
저장 후에 mysql 을 재시작한 다음 부터 7일 이전 로그는 자동으로 삭제가 된다.