• 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. 리플리케이션
  • 18. MySQL Cluster
  • 1. MySQL Cluster 개요
    2. MySQL Cluster 설치
    3. MySQL Cluster 설정
    4. MySQL Cluster 프로그램
    5. MySQL Cluster 관리
    6. MySQL Cluster Replication
    1. MySQL Cluster Replication : 약어 및 기호
    2. MySQL Cluster Replication의 일반 요구 사항
    3. MySQL Cluster Replication의 알려진 문제
    4. MySQL Cluster Replication 스키마와 테이블
    5. 복제를위한 MySQL Cluster 준비
    6. Starting MySQL Cluster Replication (Single Replication Channel)
    7. 2 개의 복제 채널을 사용하는 MySQL Cluster 복제
    8. MySQL Cluster 복제를 사용한 장애 조치 구현
    9. MySQL Cluster 복제를 사용한 MySQL Cluster 백업
    10. MySQL Cluster Replication:멀티 마스터와 순환 복제
    11. MySQL Cluster Replication 충돌 해결
    7. MySQL Cluster Release Notes
  • 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 새로운 기능

18.6.6 Starting MySQL Cluster Replication (Single Replication Channel)

이 섹션에서는 하나의 복제 채널을 사용하는 MySQL Cluster 복제를 시작하기위한 절차의 개요에 대해 설명합니다.

  1. 이 명령을 실행하여 MySQL 복제 마스터 서버를 시작합니다.

    shellM> mysqld --ndbcluster --server-id=id \
            --log-bin &

    이전 문에서 id 는이 서버의 고유 ID입니다 ( 섹션 18.6.2 "MySQL Cluster 복제의 일반 요구 사항" 을 참조하십시오). 이것은 적절한 로깅 형식을 사용하는 바이너리 로깅을 활성화하여 서버의 mysqld 프로세스를 시작합니다.

    참고

    --binlog-format=MIXED 마스터를 시작할 수 있습니다. 이 경우 클러스터간에 복제 할 때 행 기반 복제가 자동으로 사용됩니다. STATEMENT 기반의 바이너리 로깅 MySQL Cluster 복제는 지원되지 않습니다 ( 섹션 18.6.2 "MySQL Cluster 복제의 일반 요구 사항" 을 참조하십시오).

  2. 여기에서 같이 MySQL 복제 슬레이브 서버를 시작합니다.

    shellS> mysqld --ndbcluster --server-id=id &
    

    여기에 표시된 명령에서 id 는 슬레이브 서버의 고유 ID입니다. 리플리케이션 슬레이브에서 로깅을 활성화 할 필요가 없습니다.

    참고

    복제를 즉시 시작하지 않으려면이 명령 --skip-slave-start 옵션을 사용하거나 슬레이브 서버의 my.cnf 파일에 skip-slave-start 를 포함해야합니다. 이 옵션을 사용하면 다음 4 단계에서 설명한대로 적절한 START SLAVE 문이 발행 될 때까지 복제의 시작이 지연됩니다.

  3. 마스터 서버의 복제 바이너리 로그와 슬레이브 서버와 동기화해야합니다. 지금까지 마스터 바이너리 로깅이 실행되고 있지 않은 경우 다음 문을 슬레이브로 실행합니다.

    mysqlS> CHANGE MASTER TO
         -> MASTER_LOG_FILE='',
         -> MASTER_LOG_POS=4;
    

    이는 로그의 시작 지점에서 마스터의 바이너리 로그를 읽을 수 있도록 슬레이브에 지시합니다. 다른 방법으로, 즉 백업을 사용하여 마스터에서 데이터를로드하는 경우 MASTER_LOG_FILE 및 MASTER_LOG_POS 에 사용할 적절한 값을 취득하는 방법 섹션 18.6.8 "MySQL Cluster 복제를 사용한 장애 조치 구현 " 을 참조하십시오.

  4. 마지막으로, 리플리케이션 슬레이브에서 mysql 클라이언트에서이 명령을 실행하여 복제의 적용을 시작하도록 슬레이브에 지시해야합니다.

    mysqlS> START SLAVE;
    

    그러면 복제 데이터의 마스터에서 슬레이브로 전송도 시작합니다.

다음 섹션에서 설명하는 방법과 유사한 방법으로 2 개의 복제 채널을 사용할 수 있습니다. 이 방법과 하나의 복제 채널을 사용하는 방법의 차이는 섹션 18.6.7 "2 개의 복제 채널을 사용하는 MySQL Cluster 복제" 에서 설명하고 있습니다.

일괄 업데이트를 사용하여 클러스터의 복제 성능을 향상시킬 수 있습니다. 슬레이브 mysqld 프로세스에서 slave_allow_batching 시스템 변수를 설정하여이를 수행 할 수 있습니다. 업데이트는 주로 받으면 즉시 적용됩니다. 그러나 일괄 처리를 사용하면 업데이트는 32K 바이트가 함께 적용되므로 특히 개별 업데이트가 비교적 작은 경우 처리량은 향상되지만, CPU 이용률은 감소하는 결과가되는 경우가 있습니다.

참고

슬레이브의 일괄 처리는 시대마다 작동합니다. 여러 트랜잭션에 속하는 업데이트는 동일한 배치의 일환으로 보낼 수 있습니다.

모든 처리되지 않은 업데이트는 해당 업데이트의 합계가 32K 바이트 미만에도 시대의 마지막에 도달했을 때 적용됩니다.

일괄 처리는 실행시 켜거나 끌 수 있습니다. 실행시에이를 적용하기 위해 다음의 두 문장 중 하나를 사용할 수 있습니다.

SET GLOBAL slave_allow_batching = 1;
SET GLOBAL slave_allow_batching = ON;

특정 일괄 처리에서 문제가 발생하면 (작용에 의해 올바르게 복제되도록 생각되지 않는 문) 노예 일괄 처리는 다음 문 중 하나를 사용하여 비활성화 할 수 있습니다.

SET GLOBAL slave_allow_batching = 0;
SET GLOBAL slave_allow_batching = OFF;

현재 슬레이브의 일괄 처리가 적절한 SHOW VARIABLES 문에 의해 사용되고 있는지를 다음과 같이 확인할 수 있습니다.

mysql> SHOW VARIABLES LIKE 'slave%';
+---------------------------+-------+
| Variable_name             | Value |
+---------------------------+-------+
| slave_allow_batching      | ON    |
| slave_compressed_protocol | OFF   |
| slave_load_tmpdir         | /tmp  |
| slave_net_timeout         | 3600  |
| slave_skip_errors         | OFF   |
| slave_transaction_retries | 10    |
+---------------------------+-------+
6 rows in set (0.00 sec)


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