17.4.2 MySQL 버전 간의 복제 호환성
MySQL은있는 메이저 버전에서 다음 이후의 메이저 버전으로 복제를 지원합니다. 예를 들어, MySQL 4.1을 실행하는 마스터에서 MySQL 5.0을 실행하는 슬레이브 MySQL 5.0을 실행하는 마스터에서 MySQL 5.1을 실행하는 슬레이브 등의 복제 수 있습니다.
그러나 이전 마스터에서 새로운 슬레이브에 복제 할 때 마스터가 슬레이브에서 사용되는 버전의 MySQL에서 더 이상 지원하지 않는 문을 사용하거나 그런 행동에 의존 할 경우 문제 이 발생할 수 있습니다. 예를 들어, MySQL 5.5에서는 CREATE TABLE ... SELECT
문이 생성되지 않은 테이블을 변경하는 것은 허용되지만, MySQL 5.6에서 허용되지 않습니다 ( 섹션 17.4.1.5 "CREATE TABLE ... SELECT 문 복제 " 를 참조하십시오).
2 개 이상의 MySQL Server 버전을 사용하는 것은 마스터 또는 슬레이브 MySQL 서버의 수에 관계없이 여러 마스터를 사용하는 복제 설정에서 지원되지 않습니다. 이 제한은 메이저 버전뿐만 아니라 동일한 주요 버전의 마이너 버전에도 적용됩니다. 예를 들어, 체인 또는 순환 복제 설정을 사용하는 경우 MySQL 5.6.1, MySQL 5.6.2 및 MySQL 5.6.4 동시에 사용할 수 없지만, 이러한 자료의 임의의 2 개를 함께 사용하는 것은 수 있습니다.
경우에 따라서는 마스터와 마스터에서 메이저 버전 두 개 이상의 새로운 슬레이브 사이에 복제 할 수 있습니다. 그러나 MySQL 4.1 이전 버전을 실행하는 마스터에서 MySQL 5.1 이상을 실행하는 슬레이브에 복제하려고 할 알려진 문제가 있습니다. 이러한 문제를 해결하기 위해 둘 사이에 중간 버전을 실행하는 MySQL 서버를 삽입 할 수 있습니다. 예를 들어, MySQL 4.1 마스터에서 MySQL 5.1 슬레이브에 직접 복제하는 것이 아니라 MySQL 4.1 서버에서 MySQL 5.0 서버에 복제 한 후 MySQL 5.0 서버에서 MySQL 5.1 서버에 복제 할 수 있습니다.
복제 (및 기타) 기능은 지속적으로 개선되고 있기 때문에 그 MySQL 메이저 버전에서 사용 가능한 최신 버전을 사용하는 것이 좋습니다. 또한 MySQL 메이저 버전의 조기 석방을 사용하는 마스터와 슬레이브는 GA (운영 환경) 버전으로 업데이트 할 것을 권장합니다 (주 버전에서 후자를 입수 할 수있게되었을 때).
새로운 마스터에서 오래된 슬레이브에 복제 할 수 있지만, 일반적으로 지원되지 않습니다. 이것은 여러 가지 요인에 따라 달라집니다.
바이너리 로그 형식 변경 바이너리 로그 형식은 주요 릴리스 사이에서 변경 될 수 있습니다. 하위 호환성을 유지하려고 시도하지만, 이것이 언젠가 가능한 것은 아닙니다. 예를 들어, MySQL 5.0에 구현 된 바이너리 로그 형식은 이전 버전에서 사용 된 것으로부터 크게 바뀌 었습니다 (특히, 캐릭터 세트,
LOAD DATA INFILE
및 시간대의 취급에 관해서). 이것은 MySQL 5.0 (이상) 마스터에서 MySQL 4.1 (이전) 슬레이브에 복제는 일반적으로 지원되지 않는 것을 의미합니다.이것은 복제 서버의 업그레이드도 밀접한 관계가 있습니다. 자세한 내용은 섹션 17.4.3 "복제 설정을 업그레이드" 를 참조하십시오.
열 기반 리플리케이션의 사용 열 기반 리플리케이션이 MySQL 5.1.5에서 구현 되었기 때문에, 열 기반 리플리케이션을 사용하여 MySQL 5.6 이후의 마스터에서 MySQL 5.1.5 이전의 슬레이브에 복제 할 수 없습니다.
열 기반 리플리케이션 대한 자세한 내용은 섹션 17.1.2 "복제 형식" 을 참조하십시오.
SQL 호환성 복제되는 문이 마스터에서 사용할 수 있더라도 슬레이브에서 사용할 수없는 SQL 기능을 사용하려면 문 기반 복제를 사용하여 새로운 마스터에서 오래된 슬레이브에 복제 할 수 없습니다.
그러나 마스터와 슬레이브 모두 열 기반 리플리케이션을 지원하고 복제하는 데이터 정의 문에 마스터에서 발견 그러나 슬레이브에서 발견되지 않는 SQL 기능에 의존하는 것이없는 경우는 열 기반 리플리케이션을 사용하여 데이터 수정 문의 효과를 복제 할 수 있습니다 (마스터에서 실행되는 DDL이 슬레이브에서 지원되지 않는 경우에도).
MySQL 5.6의 중요한 변수 이전의 MySQL 버전에 복제 할 때 해제 할 필요가있는 기능은 MySQL 5.6에 추가되어 있습니다. 호환성을 해결하려면 MySQL 5.6 마스터에서 다음 변수를 설정하십시오.
binlog_checksum=NONE
binlog_row_image=FULL
binlog_rows_query_log_events=OFF
log_bin_use_v1_row_events=1
gtid_mode=OFF
잠재적 인 복제 문제의 자세한 내용은 섹션 17.4.1 "복제 기능 및 문제" 를 참조하십시오.