AWS

[AWS] RDS - You are not using binary logging

비번변경 2023. 9. 28. 16:55

개요

바이너리 로그에는 테이블 생성 작업이나 테이블 데이터 변경과 같은 데이터베이스 변경을 설명하는 이벤트가 포함된다. 

RDS 복제 등의 작업을 하고자 바이너리 로그를 확인하려고 했더니, 다음과 같이 수행되지 않았다.

 

바이너리 로그 파일 확인

SHOW BINARY LOGS;

-- 또는
SHOW MASTER LOGS;

 

실행 결과

 

어떻게 하면 binlog를 활성화할 수 있을까? 확인해 본다.

 

 

해결

찾아보니 AWS RDS는 biglog 활성화 방식을 자동 백업의 활성화 여부로 제한하고 있는 것 같다. 공식 문서에 따르면 자동 백업 기능은 MySQL에 대해 바이너리 로깅을 설정할지 아니면 해제할지를 결정한다고 한다. 백업 기능을 활성화해 보고 정말 binlog이 확인되는지 살펴본다.

 

백업 기능 활성화

1. 작업할 RDS 수정 버튼 클릭

 

2. 추가 구성 > 백업 설정

백업 보존 기간이 0이면 자동 백업이 비활성화된 상태다. 해당 설정을 1 이상으로 변경하면 자동 백업이 활성화된다. 기본적으로 하루에 한 번 실행되며 30분의 백업 윈도우를 가진다.

이 글에서는 다음과 같이 지정했다.

별다른 변경 사항이 없다면 계속 버튼을 클릭하고, 최종 수정 사항을 확인한다. 수정 예약 항목을 즉시 적용으로 지정하면, 바로 수정 작업이 이루어진다.

DB 인스턴스 수정을 누르면 데이터베이스 목록으로 이동하고, 수정 중이라는 표시를 확인할 수 있다.

 

 

확인

수정 중 상태가 사용 가능으로 변경되면, 실제로 바이너리 로그가 활성화되어 있는지 확인해 본다.

기존과 다르게 로그 파일의 이름과 파일 사이즈, 암호화 여부 정보로 구성된 로그 파일 목록을 확인할 수 있다.

또, 아래 명령으로 바이너리 로그 파일에 대한 상태 정보를 확인할 수 있다.

SHOW MASTER STATUS;

바이너리 로그가 비활성화 상태면 아무런 정보도 표시되지 않는다.

 

 

참고 문서

https://dev.mysql.com/doc/refman/8.0/en/show-binary-logs.html

https://dev.mysql.com/doc/refman/8.0/en/show-master-status.html