• 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 구성
    2. Replication 구현
    3. Replication 솔루션
    4. Replication Notes and Tips
    1. Replication 기능과 이슈
    1. Replication and AUTO_INCREMENT
    2. Replication and BLACKHOLE 테이블
    3. Replication and Character Sets
    4. CREATE ... IF NOT EXISTS 문 복제
    5. CREATE TABLE ... SELECT 문 복제
    6. CREATE SERVER, ALTER SERVER 및 DROP SERVER 복제
    7. CURRENT_USER ()의 복제
    8. DROP ... IF EXISTS 문 복제
    9. 테이블 정의가 다른 마스터와 슬레이브에 복제
    10. Replication and DIRECTORY Table Options
    11. 호출되는 기능의 복제
    12. 복제 및 부동 소수점 값
    13. 복제 및 소수 초 지원
    14. 복제 및 FLUSH
    15. 복제와 시스템 함수
    16. 복제 및 LIMIT
    17. 복제 및 LOAD DATA INFILE
    18. 복제 및 REPAIR TABLE
    19. 복제 및 마스터 또는 슬레이브 Shutdowns
    20. 복제와 max_allowed_pa​​cket
    21. 복제 및 MEMORY 테이블
    22. 복제 및 임시 테​​이블
    23. mysql 시스템 데이터베이스의 복제
    24. 복제 및 쿼리 최적화
    25. 복제 및 예약어
    26. 복제중인 슬레이브 오류
    27. 서버 측 도움말 테이블의 복제
    28. Replication 및 서버 SQL 모드
    29. Replication 시도 및 시간 제한
    30. Replication 및 Time Zones
    31. Replication 및 트랜잭션
    32. Replication 및 트리거
    33. Replication 및 TRUNCATE TABLE
    34. Replication 및 변수
    35. Replication 및 Views
    2. MySQL 버전 간의 복제 호환성
    3. Replication 설정 업그레이드
    4. Replication 문제 해결
    5. Replication 버그 또는 문제를보고하는 방법
  • 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.4.1.34 복제 및 변수

시스템 변수는 다음 변수를 제외 (세션 범위에서 사용될 때), STATEMENT 모드 사용시 제대로 복제되지 않습니다.

  • auto_increment_increment

  • auto_increment_offset

  • character_set_client

  • character_set_connection

  • character_set_database

  • character_set_server

  • collation_connection

  • collation_database

  • collation_server

  • foreign_key_checks

  • identity

  • last_insert_id

  • lc_time_names

  • pseudo_thread_id

  • sql_auto_is_null

  • time_zone

  • timestamp

  • unique_checks

MIXED 모드 사용시 위의 목록에서 변수가 세션 범위에서 사용될 때 명령문 기반에서 행 기반 로깅로 전환됩니다. 섹션 5.2.4.3 "혼합 형식의 바이너리 로깅 형식" 을 참조하십시오.

NO_DIR_IN_CREATE 모드의 경우를 제외하고 sql_mode 도 복제됩니다. 슬레이브는 항상 NO_DIR_IN_CREATE 에 그 자신의 가치를 유지합니다 (마스터에서 변경에 관계없이). 이것은 모든 복제 형식에 적용됩니다.

그러나 mysqlbinlog가 SET @@sql_mode = mode 문을 분석 할 때, NO_DIR_IN_CREATE 을 포함한 전체 mode 값이 수신 서버에 전달됩니다. 따라서 이러한 문 복제는 STATEMENT 모드 사용시 안전하지 않을 수 있습니다.

default_storage_engine 및 storage_engine 시스템 변수는 로깅 모드에 관계없이 복제되지 않습니다. 이것은 서로 다른 스토리지 엔진 간의 복제를 용이하게하기위한 것입니다.

read_only 시스템 변수는 복제되지 않습니다. 또한이 변수를 사용하면 임시 테이블, 테이블 잠금 및 SET PASSWORD 명령문에 대한 효과는 MySQL 버전에 따라 다릅니다.

max_heap_table_size 시스템 변수는 복제되지 않습니다. 슬레이브에서이 변수의 값을 늘리지 않고 마스터에서 늘리면 결국 슬레이브에서 Table is full 오류가 발생할 수 있습니다 (슬레이브 대응하는 것보다 커질 수 허용 된 마스터에서 MEMORY 테이블에서 INSERT 문을 실행하려고 할 때). 자세한 내용은 섹션 17.4.1.21 "복제 및 MEMORY 테이블" 을 참조하십시오.

문 기반 복제 세션 변수는 테이블을 업데이트하는 명령문에서 사용할 때 제대로 복제되지 않습니다. 예를 들어, 다음 순서의 문은 마스터와 슬레이브로 동일한 데이터를 삽입하지 않습니다.

 SET max_join_size = 1000;
 INSERT INTO mytable VALUES (@@ max_join_size);

이것은 일반적인 순서에는 적용되지 않습니다.

 SET time_zon​​e = ...;
 INSERT INTO mytable VALUES (CONVERT_TZ (..., ..., @@ time_zon​​e));

세션 변수의 복제는 열 기반 리플리케이션을 사용하는 경우에는 문제가 없습니다. 이 경우, 세션 변수는 항상 안전하게 복제됩니다. 섹션 17.1.2 "복제 형식" 을 참조하십시오.

MySQL 5.6에서는 다음의 세션 변수는 로깅 형식에 관계없이 바이너리 로그에 기록 된 바이너리 로그를 분석 할 때 리플리케이션에 의해 허용됩니다.

  • sql_mode

  • foreign_key_checks

  • unique_checks

  • character_set_client

  • collation_connection

  • collation_database

  • collation_server

  • sql_auto_is_null

중요

문자 셋과 콜레 션에 관련된 세션 변수는 바이너리 로그에 기록 되더라도, 다른 문자 집합 사이의 복제는 지원되지 않습니다.

혼란의 가능성을 줄이기 위해 마스터와 슬레이브에서 lower_case_table_names 시스템 변수에 항상 동일한 설정을 사용하는 것이 좋습니다 (특히 파일 시스템이 대소 문자를 구별 플랫폼에서 MySQL을 실행하는 경우 ).

참고

이전 버전의 MySQL에서 대소 문자를 구분하는 파일 시스템을 사용하는 경우이 변수를 슬레이브로 1 마스터에서 다른 값으로 설정하면 복제가 실패 할 수있었습니다. 이 문제는 MySQL 5.6.1에서 해결되고 있습니다. (Bug # 37656)


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