AWS DMS를 Aurora MySQL과 함께 소스로 사용할 때 받은 이진 로깅 오류를 해결하려면 어떻게 해야 합니까?

2분 분량
0

MySQL을 실행 중인 Amazon Aurora DB 인스턴스에 이진 로깅이 활성화되어 있습니다. Aurora DB 인스턴스를 AWS Database Migration Service(AWS DMS) 작업의 원본으로 사용 중인데 오류가 발생했습니다. 이 오류를 해결하려면 어떻게 해야 합니까?

간략한 설명

FULL LOAD AND CDC 또는 CDC 전용인 AWS DMS 작업과 함께 변경 데이터 캡처(CDC)를 사용하려면 원본 Aurora MySQL 호환 버전 DB 라이터 인스턴스에서 이진 로깅을 활성화해야 합니다. 읽기 전용 복제본은 CDC 작업에 원본으로 지원되지 않기 때문에 쓰기 인스턴스를 사용해야 합니다. 자세한 내용은 MySQL 데이터베이스를 AWS DMS의 원본으로 사용할 때 적용되는 제한 사항을 참조하세요.

이진 로깅이 활성화되지 않았거나 사용자가 리더 인스턴스에 연결된 경우 다음과 비슷한 로그 항목이 표시됩니다.

메시지
[SOURCE_CAPTURE] I: System var 'log_bin' ='OFF'
[SOURCE_CAPTURE] E: Error Code [10001]: MySQL 서버에 이진 로깅을 활성화해야 함 [1020418](mysql_endpoint_capture.c: 366)

해결 방법

사용자가 리더 인스턴스에 연결된 경우 먼저 라이터 인스턴스를 식별한 다음 AWS DMS와 라이터 인스턴스를 연결합니다. 클러스터 엔드포인트는 항상 클러스터의 현재 라이터를 가리키기 때문에 클러스터 엔드포인트에 연결하는 것이 가장 좋습니다.

그런 다음 클러스터 엔드포인트를 사용하여 소스 Aurora 클러스터 라이터 노드에 연결하여 이진 로깅이 활성화되었는지 확인합니다.

mysql> show global variables like "log_bin";
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin       | OFF   |
+---------------+-------+

log_bin 파라미터가 OFF로 설정된 경우 Aurora 클러스터의 클러스터 파라미터 그룹을 확인하여 binlog_format 파라미터가 ROW으로 설정되어 있는지 확인합니다. binlog_formatROW으로 설정되지 않은 경우, Aurora for MySQL에 이진 로깅을 활성화하도록 파라미터를 수정합니다.

참고: 이 파라미터는 정적 파라미터이므로 Aurora 인스턴스를 재부팅해야 이 변경 사항이 적용됩니다.

binlog_format 파라미터를 ROW으로 설정한 후 Aurora 인스턴스에 연결하여 이진 로깅이 활성화되었는지 확인합니다.

mysql> show global variables like "log_bin";
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin       | ON    |
+---------------+-------+

이진 로깅을 활성화하고 AWS DMS에서 클러스터 라이터 엔드포인트를 사용 중인지 확인한 후 작업을 다시 시작합니다.


관련 정보

AWS DMS에 MySQL 호환 데이터베이스를 원본으로 사용