이 섹션에는 다음 정보가 포함되어 있습니다.
- 소스 MySQL 데이터베이스에서 가져오는 데이터가 Datastream에서 처리되는 방법
- Datastream에서 지원되는 MySQL 데이터베이스 버전
- MySQL 데이터베이스를 소스로 사용할 경우의 알려진 제한사항
- 데이터를 대상으로 스트리밍할 수 있도록 소스 MySQL 데이터베이스를 설정하는 방법의 개요
행동
이 섹션에서는 Datastream을 사용하여 데이터를 복제할 때 MySQL 소스의 동작을 설명합니다. MySQL 데이터베이스에서 데이터를 수집할 때 바이너리 로그 기반 복제 또는 전역 트랜잭션 식별자 (GTID) 기반 복제를 사용할 수 있습니다. 스트림을 만들 때 CDC 메서드를 선택합니다.
바이너리 로그 기반 복제
Datastream은 바이너리 로그 파일을 사용하여 MySQL 데이터베이스의 데이터 변경사항을 기록할 수 있습니다. 이러한 로그 파일에 포함된 정보는 대상에 복제되어 소스에서 이루어진 변경사항을 재현합니다.
Datastream의 바이너리 로그 기반 복제의 주요 특징은 다음과 같습니다.
- 지정된 MySQL 소스의 모든 데이터베이스 또는 특정 데이터베이스와 데이터베이스의 모든 테이블 또는 특정 테이블을 선택할 수 있습니다.
- 모든 이전 데이터가 복제됩니다.
- 지정된 데이터베이스 및 테이블의 삽입, 업데이트, 삭제와 같은 모든 데이터 조작 언어 (DML) 변경사항이 복제됩니다.
- 커밋된 변경사항만 복제됩니다.
전역 트랜잭션 식별자 (GTID) 기반 복제
Datastream은 전역 식별자 (GTID) 기반 복제도 지원합니다.
전역 트랜잭션 식별자 (GTID)는 MySQL 소스에서 커밋된 각 트랜잭션과 연결되어 생성되는 고유 식별자입니다. 이 식별자는 데이터베이스 클러스터의 각 노드가 자체 번호가 지정된 자체 바이너리 로그 파일을 유지하는 바이너리 로그 기반 복제와 달리, 발생한 소스뿐만 아니라 지정된 복제 토폴로지의 모든 서버에서 고유합니다. 바이너리 로그 연속성이 끊어지고 바이너리 로그 기반 복제가 실패하므로 오류 또는 계획된 다운타임이 발생할 경우 별도의 바이너리 로그 파일과 번호 지정이 문제가 될 수 있습니다.
GTID 기반 복제는 장애 조치, 자체 관리형 데이터베이스 클러스터를 지원하며 데이터베이스 클러스터의 변경사항과 관계없이 계속 작동합니다.
Datastream의 GTID 기반 복제의 주요 특징은 다음과 같습니다.
- 지정된 MySQL 소스의 모든 데이터베이스 또는 특정 데이터베이스와 데이터베이스의 모든 테이블 또는 특정 테이블을 선택할 수 있습니다.
- 모든 이전 데이터가 복제됩니다.
- 지정된 데이터베이스 및 테이블의 삽입, 업데이트, 삭제와 같은 모든 데이터 조작 언어 (DML) 변경사항이 복제됩니다.
- 커밋된 변경사항만 복제됩니다.
- 원활한 장애 조치 지원
바이너리 로그 기반 복제에서 GTID 기반 복제로 전환
백필을 수행하지 않고 스트림을 업데이트하고 바이너리 로그 기반 복제에서 GTID 기반 복제로 전환하려면 다음 단계를 수행하세요.