Data Engineering/AWS, Spark

RDS MySQL DB 트랜잭션 binary log 보기

Hyunie 2023. 5. 11. 18:18
728x90
반응형

다음 쿼리를 실행하면 서버에 저장되어있는 bin log 파일 목록을 조회할 수 있다.

SHOW BINARY LOGS;

실행결과

해당 로그 파일 중 특정 파일의 로그 내용을 보고 싶다면 다음 쿼리를 사용할 수 있다 (추가 옵션은 공식문서참조)

SHOW BINLOG EVENTS IN 'binlog 파일 이름';

실행결과

 문제는 쿼리로 바이너리 로그를 조회하면 로그 시간이 조회가 안 된다는 것이었다. 나는 시간을 보는 것이 필요했기에 raw log를 받는 방법을 선택했다.

 Raw log는 mysqlbinlog 유틸리티를 사용해 다운받을 수 있고, mysqlbinlog 유틸리티는 mysql을 설치하면 같이 받아진다.

brew install mysql​

 

  주의할 점은 바이너리 로그를 AWS 공식문서에 나온 대로 받으면 DB서버 설정값에 따라 글자가 깨져서 보일 수 있다. 만약 그렇다면 해당 파일을 .sql파일로 변환해서 저장하여 조회하면 된다.

 

 내가 실행한 cli 명령어는 다음과 같다.

mysqlbinlog --read-from-remote-server\
--host=<host 주소>\
--port=3306\
--user<user 이름>\
--password\
mysql-bin-changelog.884051 > binlog884049.sql
728x90
반응형