우분투2012. 9. 21. 20:36

mysql의 log-bin을 활성화시켜 놓고 오래 사용하는 경우 var디렉토리에 mysql-bin.XXXX 형태의 바이너리 로그 파일이 계속 쌓이게 됩니다.
때로는 이 로그를 분석해서 어떤 쿼리들이 실행되었었는지 확인도 되고, 백업이나 복구에 사용되기도 하기 때문에 유용할 수 있습니다.
특히 DB 리플리케이션을 쓰려면 이 로그가 필요합니다.
그러나 작은 파티션에 계속해서 로그가 쌓이다 보면 어느 순간 용량이 부족해지게 되면 mysql구동에 문제가 생겨 버립니다. 그래서, 적당한 용량으로 로그를 유지하는 간단한 방법을 소개합니다.

바로 로그의 만료 기간을 지정해 주는 것입니다.
mysql에 접속한 후 아래의 명령으로 시스템 변수들을 확인해 보시면 expire_logs_days 라는 값이 0으로 되어 있을 것입니다.

mysql> show variables;

이 변수를 아래와 같이 원하는 기간으로 지정해 줄 수 있습니다.

mysql> set global expire_logs_days = 3;

다시, 위의 show variables;로 확인해 보시면 3일로 변경된 것이 보일 것입니다.
이러면 3일간의 로그만 보존되게 되면서 용량 문제가 없어집니다!


Posted by 다오나무