GTID 기반 복제 사용 - Amazon Relational Database Service

GTID 기반 복제 사용

아래 내용에서는 Amazon RDS for MySQL DB 인스턴스 간 이진 로그(binlog) 복제를 통해 전역 트랜잭션 식별자(GTID)를 사용하는 방법이 나와 있습니다.

binlog 복제를 사용하고 있지만 MySQL을 사용한 GTID 기반 복제에 대해 잘 알지 못하는 경우 MySQL 설명서의 전역 트랜잭션 식별자를 사용한 복제를 참조하세요.

GTID 기반 복제는 RDS for MySQL 버전 5.7.23 이상의 MySQL 5.7 버전 및 RDS for MySQL 8.0.26 이상의 MySQL 8.0 버전에 대해서만 지원됩니다. 복제 구성의 모든 MySQL DB 인스턴스가 이 요구 사항을 충족해야 합니다.

전역 트랜잭션 식별자(GTID) 개요

전역 트랜잭션 ID(GTIDs) are unique identifiers generated for committed MySQL transactions. GTID를 사용해 binlog 복제 관련 문제를 더 간편하게 해결할 수 있습니다.

MySQL은 binlog 복제에 다음 두 가지 유형의 트랜잭션을 사용합니다.

  • GTID 트랜잭션 – GTID로 식별되는 트랜잭션.

  • 익명 트랜잭션 – GTID가 할당되지 않은 트랜잭션.

복제 구성의 GTID는 모든 DB 인스턴스에서 고유합니다. GTID를 사용하면 로그 파일 위치를 참조할 필요가 없기 때문에 복제 구성이 간편해집니다. 또한 GTID를 사용하면 복제된 트랜잭션을 추적하고 소스 인스턴스 및 복제본이 일치하는지를 쉽게 확인할 수 있습니다.

GTID 기반 복제를 사용하여 RDS for MySQL 읽기 전용 복제본으로 데이터를 복제할 수 있습니다. 읽기 전용 복제본을 새로 생성할 때 GTID 기반 복제를 구성할 수 있습니다. 또는 기존 읽기 전용 복제본을 GTID 기반 복제를 사용하도록 변환할 수 있습니다.

RDS for MySQL을 사용하여 지연된 복제 구성에서 GTID 기반 복제를 사용할 수도 있습니다. 자세한 정보는 MySQL을 사용한 지연 복제 구성을 참조하세요.

GTID 기반 복제 파라미터

다음 파라미터를 사용하여 GTID 기반 복제를 구성할 수 있습니다.

파라미터 유효한 값 설명

gtid_mode

OFF, OFF_PERMISSIVE, ON_PERMISSIVE, ON

OFF는 새 트랜잭션을 익명 트랜잭션(GTID가 없음)으로 지정하며, 트랜잭션을 복제하려면 익명이어야 합니다.

OFF_PERMISSIVE는 새 트랜잭션을 익명 트랜잭션(GTID가 없음)으로 지정하지만, 모든 트랜잭션을 복제할 수 있습니다.

ON_PERMISSIVE는 새 트랜잭션을 GTID 트랜잭션으로 지정하지만, 모든 트랜잭션을 복제할 수 있습니다.

ON은 새 트랜잭션을 GTID 트랜잭션으로 지정하고, 트랜잭션을 복제하려면 GTID 트랜잭션이어야 합니다.

enforce_gtid_consistency

OFF, ON, WARN

OFF는 트랜잭션이 GTID 일관성을 위반하는 것을 허용합니다.

ON은 트랜잭션이 GTID 일관성을 위반하지 않도록 합니다.

WARN은 트랜잭션이 GTID 일관성을 위반하는 것을 허용하지만, 위반이 발생할 경우 경고를 생성합니다.

참고

AWS Management Console 콘솔에서 gtid_mode 파라미터는 gtid-mode로 표시됩니다.

GTID 기반 복제의 경우 DB 인스턴스 또는 읽기 전용 복제본의 파라미터 그룹에 대해 이 설정을 사용하십시오.

  • ONON_PERMISSIVE는 RDS DB 인스턴스에서 밖으로 복제하는 경우에만 적용됩니다. 복제되는 트랜잭션에 대해 이 두 값으로 인해 RDS DB 인스턴스가 GTID를 사용하게 됩니다. ON은 대상 데이터베이스에서도 GTID 기반 복제를 사용할 것을 요구합니다. ON_PERMISSIVE로 인해 외부 데이터베이스에서 GTID 기반 복제는 선택 사항이 됩니다.

  • OFF_PERMISSIVE가 설정된 경우 이는 RDS DB 인스턴스가 소스 데이터베이스에서 안으로 복제하는 것을 수락할 수 있음을 뜻합니다. 소스 데이터베이스가 GTID 기반 복제를 사용하든, 사용하지 않든 수락이 가능합니다.

  • OFF가 설정된 경우 이는 RDS DB 인스턴스가 GTID 기반 복제를 사용하지 않는 소스 데이터베이스에서 안으로 복제하는 것만을 수락할 수 있음을 뜻합니다.

파라미터 그룹에 대한 자세한 내용은 Amazon RDS의 파라미터 그룹 단원을 참조하십시오.