Aurora과 MySQL 간의 복제 또는 Aurora와 다른 Aurora DB 클러스터(이진 로그 복제본) 간의 복제 - Amazon Aurora

Aurora과 MySQL 간의 복제 또는 Aurora와 다른 Aurora DB 클러스터(이진 로그 복제본) 간의 복제

Amazon Aurora MySQL는 MySQL과 호환되기 때문에 MySQL 데이터베이스와 Amazon Aurora MySQL DB 클러스터 사이에 복제를 설정할 수 있습니다. 이러한 유형의 복제는 MySQL 이진 로그 복제를 사용하며 binlog 복제라고 합니다. Aurora에서 이진 로그 복제를 사용하는 경우 MySQL 데이터베이스에서 MySQL 버전 5.5 이상을 실행하는 것이 좋습니다. Aurora MySQL DB 클러스터가 복제 소스 또는 복제본인 경우 복제를 설정할 수 있습니다. Amazon RDS MySQL DB 인스턴스, Amazon RDS 외부의 MySQL 데이터베이스 또는 다른 Aurora MySQL DB 클러스터를 사용하여 복제할 수 있습니다.

참고

특정 유형의 Aurora DB 클러스터에서 안팎으로의 binlog 복제를 사용할 수 없습니다. 구체적으로는 Aurora Serverless v1 클러스터에 binlog 복제를 사용할 수 없습니다. SHOW MASTER STATUSSHOW SLAVE STATUS(Aurora MySQL 버전 2) 또는 SHOW REPLICA STATUS(Aurora MySQL 버전 3) 문이 출력을 반환하지 않는 경우 사용 중인 클러스터가 binlog 복제를 지원하는지 확인하세요.

다른 AWS 리전의 RDS for MySQL DB 인스턴스 또는 Aurora MySQL DB 클러스터를 사용하여 복제할 수도 있습니다. AWS 리전 간 복제를 수행할 경우 DB 클러스터와 DB 인스턴스에 공개 액세스가 가능한지 확인합니다. Aurora MySQL DB 클러스터가 VPC의 프라이빗 서브넷에 있는 경우 AWS 리전 간에 VPC 피어링을 사용합니다. 자세한 내용은 VPC에 있는 DB 클러스터에 다른 VPC에 있는 EC2 인스턴스가 액세스 단원을 참조하십시오.

Aurora MySQL DB 클러스터와 다른 AWS 리전의 Aurora MySQL DB 클러스터 간에 복제를 구성하려면 소스 DB 클러스터와 다른 AWS 리전에 Aurora MySQL DB 클러스터를 읽기 전용 복제본으로 생성합니다. 자세한 내용은 여러 AWS 리전에 걸쳐 Amazon Aurora MySQL DB 클러스터 복제 단원을 참조하십시오.

Aurora MySQL 버전 2 및 3에서는 Aurora MySQL과 외부 원본 또는 복제를 위해 전역 트랜잭션 식별자(GTID)를 사용하는 대상 간에 복제 작업을 할 수 있습니다. Aurora MySQL DB 클러스터에 있는 GTID 관련 파라미터에 외부 데이터베이스의 GTID 상태와 호환되는 설정이 있어야 합니다. 이 작업을 수행하는 방법은 GTID 기반 복제 사용 단원을 참조하세요. Aurora MySQL 버전 3.01 이상에서는 GTID를 사용하지 않는 소스에서 복제되는 트랜잭션에 GTID를 할당하는 방법을 선택할 수 있습니다. 해당 설정을 제어하는 저장 프로시저에 대한 자세한 내용은 mysql.rds_assign_gtids_to_anonymous_transactions(Aurora MySQL 버전 3) 섹션을 참조하세요.

주의

Aurora MySQL과 MySQL 간에 복제할 경우 InnoDB 테이블만 사용해야 합니다. 복제할 MyISAM 테이블이 있는 경우 다음 명령을 사용하여 복제를 설정하기 전에 해당 테이블을 InnoDB로 변환할 수 있습니다.

alter table <schema>.<table_name> engine=innodb, algorithm=copy;

다음 섹션에서는 복제 설정, 복제 중지, 데이터베이스 읽기 규모 조정, binlog 복제 최적화, 향상된 binlog 설정을 설명합니다.