본문
MySQL - 바이너리 로그 관리.
Mysql 을 설치를 하게 되면 기본적으로 바이너리 로그가 쌓이게 된다.
사용자에 따라 바이너리 로그 기록을 원하는 사람도 있을거고 , 기록을 원치 않는 사람도 있을것이다.
하지만 난 이 바이너리 로그로 몇번 복구를 해 재미를 봤던 경험이 있어 무슨일이 있어도 바이너리 로그를 남기게 한다.
하지만 어느정도의 시간이 지나면 용량에 압박을 느낄것이다.
바이너리 로그를 최신 사항으로 유지하는것에 대해 찾아보기 시작했다.
첫번째 , /etc/my.cnf 파일에 로그 최대 보관일수를 정할수가 있었다.
[mysqld]
expire_logs_days = 3 ( 3일동안 보관 )
my.cnf 에 저 라인을 추가해주면 최근 3일만 유지를 하게 된다. 자동으로 지워지는지는 아직 확인을 안해봤다.
다음 방법으로는 logrotate 를 사용하는 방법이 있다.
mysql/share/mysql 디렉토리 안에 mysql-log-rotate 라는 스크립트를 자동으로 제공해준다.
이 파일로 로그를 순환 시켜주면 된다.
우선 mysql-log-rotate 파일을 /etc/logrotate.d 디렉토리로 복사를 한다.
/root/.my.cnf 라는 파일을 생성하여 자신의 데이터베이스 계정을 적어준다. 단, 루트만 읽을수 있는 권한을 줘야 한다.
누가 열어보기라도 하면.. ㅠㅠ
[mysqladmin]
password=패스워드
user=접속자
저 3 줄로 .my.cnf 파일을 생성해주면 된다.
사용자에 따라 mysql-log-rotate 스크립트를 수정해도 된다.
logrotate -f /etc/logrotate.d/mysql-log-rotate 로 로그테이블 실행
관련링크
댓글목록
등록된 댓글이 없습니다.