• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.6 한글메뉴얼) [close]
  • 1. MySQL 5.6 새로운 기능
  • 2. MySQL 설치 및 업그레이드
  • 3. MySQL Tutorial
  • 4. MySQL 프로그램
  • 5. MySQL 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 1. Replication 구성
    1. Replication 설정 방법
    2. Replication Formats
    1. Statement-Based 및 Row-Based Replication의 장점 과 단점
    2. Row-Based Logging 및 복제 사용
    3. 바이너리 Logging의 안전 및 안전하지 않은 명령문의 판단
    3. 글로벌 트랜잭션 식별자를 사용하여 복제
    4. Replication 및 바이너리 Logging 옵션 과 변수
    5. 일반적인 Replication 관리 작업
    2. Replication 구현
    3. Replication 솔루션
    4. Replication Notes and Tips
  • 18. MySQL Cluster
  • 19. 파티셔닝
  • 20. Stored Programs and Views
  • 21. INFORMATION_SCHEMA
  • 22. PERFORMANCE SCHEMA
  • 23. 컨넥터 및 API
  • 24. MySQL 확장
  • 25. MySQL Enterprise Edition
  • 26. MySQL Workbench
  • 27. 제약 및 제한
  • 28. MySQL 5.7 새로운 기능

17.1.2 Replication Formats

17.1.2.1 문 기반 및 열 기반 리플리케이션의 장점과 단점
17.1.2.2 행 기반 로깅 및 복제 사용
17.1.2.3 바이너리 로깅의 안전 및 안전하지 않은 문의 판단

복제가 기능하기는 바이너리 로그에 기록 된 이벤트가 마스터에서 읽은 슬레이브로 처리되기 때문입니다. 이벤트는 이벤트 유형에 따라 다양한 형식으로 바이너리 로그에 기록됩니다. 사용되는 다양한 복제 형식은 이벤트가 마스터의 바이너리 로그에 기록 된 데 사용 된 바이너리 로깅 형식으로 대응하고 있습니다. 바이너리 로깅 형식 및 복제에 사용되는 용어와의 관계는 다음과 같습니다.

  • 명령문 기반 바이너리 로깅을 사용하는 경우, 마스터는 SQL 문을 바이너리 로그에 기록합니다. 마스터에서 슬레이브로 복제 슬레이브 SQL 문을 실행하여 작동합니다. 이것은 문 기반 복제 (SBR 단축되는 경우가 많다)라고하며, 표준 MySQL 명령문 기반 바이너리 로깅 형식을 지원합니다. MySQL 버전 5.1.4 이전의 복제 기능은이 형식 만 사용되었습니다.

  • 행 기반 로깅을 사용하는 경우, 마스터는 각 테이블 행이 어떻게 변경되었는지를 나타내는 이벤트를 바이너리 로그에 기록합니다. 마스터에서 슬레이브로 복제 테이블 행이 변경된 것을 나타내는 이벤트를 슬레이브에 복사하는 방식으로 작동합니다. 이것은 행 기반 복제 (RBR 단축되는 경우가 많다)이라고합니다. 행 기반 복제에서는 마스터는 각 테이블 행이 어떻게 변경되었는지를 나타내는 이벤트를 바이너리 로그에 기록합니다.

  • 변경 로그가 기록 될 때 명령문 기반 및 행 기반의 어느 쪽이 적합했는지에 따라 이러한 기록의 조합을 사용하도록 MySQL을 구성 할 수 있습니다. 이것은 혼합 형식의 로깅이라고합니다. 혼합 형식의 로깅을 사용하는 경우 기본적으로 문 기반 로깅이 사용됩니다. 문에 따라 또한 사용되는 스토리지 엔진에 따라 로그는 특정한 경우에 행 기반으로 자동으로 전환됩니다. 혼합 형식을 사용하는 복제는 종종 혼합 기반 복제 또는 혼합 형식의 복제라고합니다. 자세한 내용은 섹션 5.2.4.3 "혼합 형식의 바이너리 로깅 형식" 을 참조하십시오.

MySQL 5.6에서는 문 기반의 형식이 기본입니다.

MySQL Cluster 모든 MySQL Cluster NDB 7.3 및 MySQL Cluster NDB 7.4 릴리스에 대한 기본 바이너리 로깅 형식은 混合 입니다. MySQL Cluster Replication은 항상 행 기반 복제를 사용하고 NDB 스토리지 엔진은 문 기반 복제를 사용할 수 없습니다. 자세한 내용은 섹션 18.6.2 "MySQL Cluster 복제의 일반 요구 사항" 을 참조하십시오.

混合 형식을 사용하는 경우, 바이너리 로깅 형식은 사용되는 스토리지 엔진 실행되는 문에 의해 어느 정도 결정됩니다. 혼합 형식의 로깅 및 다른 로깅 형식의 지원을 관리하는 규칙의 자세한 내용은 섹션 5.2.4.3 "혼합 형식의 바이너리 로깅 형식" 을 참조하십시오.

실행중인 MySQL 서버의 로그 형식은 binlog_format 서버 시스템 변수를 설정하여 제어됩니다. 이 변수는 세션 또는 글로벌 범위에서 설정할 수 있습니다. 새로운 설정이 적용되는시기와 방법을 관리하는 규칙은 다른 MySQL 서버 시스템 변수와 동일합니다. 현재의 세션 변수를 설정하면 세션이 끝날 때까지 지속 변경은 다른 세션에 가시가 아니라 변수를 전역으로 설정하면 활성화하려면 서버를 다시 시작해야합니다. 자세한 내용은 섹션 13.7.4 "SET 구문" 을 참조하십시오.

런타임 바이너리 로깅 형식을 변경할 수 없다, 즉 그렇게하면 복제가 실패하는 경우가 있습니다. 섹션 5.2.4.2 "바이너리 로그 형식 설정" 을 참조하십시오.

글로벌 또는 세션 binlog_format 값을 설정하려면 SUPER 권한이 필요합니다.

문베이스 및 행 기반 복제 형식은 다른 문제 및 제한이 있습니다. 관련된 장점과 단점의 비교는 섹션 17.1.2.1 "문 기반 및 열 기반 리플리케이션의 장점과 단점" 을 참조하십시오.

문 기반 복제는 스토어드 루틴 또는 트리거의 복제 문제가 발생할 수 있습니다. 대신 행 기반 복제를 사용하면 이러한 문제를 해결할 수 있습니다. 자세한 내용은 섹션 20.7 "저장 프로그램의 바이너리 로깅" 을 참조하십시오.

서울시 강남구 영동대로 602 6층
TEL: 02-6061-0006  /  E: csr@mysqlkorea.com
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved