데이터베이스 마이그레이션 실패 및 binlog 보존 기간 설정

Minho Park 60 평판 포인트
2026-10-09T07:18:16.83+00:00

긴 스레드에 이어서 - (소스 DB의 바이너리 로그가 삭제되어 데이터베이스 마이그레이션 작업이 실패함: 소스에서 binlog 보존 기간을 어떻게 설정해야 하는가? 논의 ...

비즈니스용 Windows | Windows 365 Enterprise
댓글 0개 설명 없음

질문 작성자가 수락한 답변
VPHAN 45,665 평판 포인트 독립 자문가
2026-10-09T11:20:09.8733333+00:00

마이그레이션 작업 중 오류 1236이 발생한 원인은 작업이 필요한 바이너리 로그를 읽기 전에 소스에서 해당 로그가 삭제되었기 때문입니다. 이미 삭제된 로그는 복구할 수 없으므로 기존 마이그레이션 작업을 재개할 수 없습니다.

해결 방법:

  1. 바이너리 로그 보존 기간 연장: MySQL 8.0에서는 binlog_expire_logs_seconds = 604800으로 설정하여 7일간 로그를 보존합니다. MySQL 5.7에서는 expire_logs_days = 7을 사용합니다.
  2. 로그 설정 확인: log_bin이 활성화되어 있고, binlog_format이 ROW, binlog_row_image가 FULL로 설정되어 있는지 확인합니다.
  3. 관리형 데이터베이스 설정: Amazon RDS에서는 바이너리 로그 보존 기간을 168시간으로 설정하고 자동 백업을 활성화합니다. Aurora MySQL과 Cloud SQL은 각각의 보존 정책을 확인해야 하며, Azure Database for MySQL은 플랫폼의 백업 정책에 따라 보존 기간이 결정됩니다.
  4. 로그 삭제 및 디스크 공간 확인: PURGE BINARY LOGS, RESET BINARY LOGS AND GTIDS 명령이나 정리 스크립트가 로그를 조기에 삭제하지 않는지 확인합니다. 또한 바이너리 로그 디렉터리에 충분한 디스크 공간을 확보합니다.
  5. 마이그레이션 재시작: 새로운 보존 설정을 적용하고 확인한 후, 기존 작업을 재개하는 대신 새로운 전체 로드(full load)부터 마이그레이션을 다시 시작합니다. 이를 통해 새로운 스냅샷과 로그 위치를 함께 설정할 수 있습니다.

VPHAN

이 대답이 도움이 되었나요?

2명이 이 답변이 도움이 된다고 생각했습니다.
댓글 0개 설명 없음

0 추가 답변

정렬 기준: 가장 유용함

답변

질문 작성자는 답변을 '승인됨'으로 표시하고, 중재자는 답변을 '추천됨'으로 표시할 수 있습니다. 이를 통해 사용자는 해당 답변이 작성자의 문제를 해결했다는 것을 알 수 있습니다.