• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 서비스
    • MySQL유지보수
    • MySQL라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL HA 한글메뉴얼) [close]
  • 1. Chapter 리플리케이션
  • 1. 리플리케이션 구성
    2. 리플리케이션 솔루션
    1. 백업용으로 리플리케이션 사용하기
    2. 서로 다른 스토리지 엔진을 사용하는 마스터와 슬레이브 간의 리플리케이션 구성
    3. 리플리케이션을 이용한 시스템 분산 처리 (Scale-Out)
    4. 서로 다른 데이터베이스를 서로 다른 슬레이브에 복제하기
    5. 리플리케이션 성능 개선
    6. 마스터 서버 변경하기
    7. SSL을 사용해서 리플리케이션 설정하기
    3. 리플리케이션 노트 (Notes) 및 팁 (Tips)
    4. 리플리케이션 구현
  • 2. Chapter MySQL ndb Cluster

1.2.5. 리플리케이션 성능 개선

 

리플리케이션 프로세스의 성능을 개선하는 방법 중의 하나는, 마스터가 오직 하나의
슬레이브
(프라이머리 슬레이브)에만 복제를 하도록 만들고, 나머지 슬레이브들은 이 프라이머리 슬레이브에 연결하는 것이다. (그림 1.3)

 

Figure 1.3. 리플리케이션을 추가해서 전체 시스템 성능 개선하기

이렇게 구성하기 위해서는, MySQL 인스턴스를 다음과 같이 만들어야 한다:

  • 마스터 1은 모든 변경 사항 및 업데이트가 기록되는 프라이머리 마스터이다.
  • 마스터 2는 마스터1의 슬레이브이고, 이 서버가 나머지 하부 리플리케이션 슬레이브에 리플리케이션 기능을 제공한다. 마스터 2 만이 마스터 1에 접속할 수 있는 유일한 서버가 된다. 마스터 2 역시 바이너리 로깅 활성화 및 --log-slave-updates 옵션을 가지고 있다.
  • 슬레이브 1, 슬레이브 2, 그리고 슬레이브 3은 마스터 2의 슬레이브 형태로 동작을 해서 마스터 2의 정보를 복제하는데, 실제로는 마스터 1의 정보를 복제하는 것이다.

이러한 구성은 프라이머리 마스터의 클라이언트 로드와 네트워크 인터페이스 로드를 절감 시켜 주기 때문에, 프라이머리 마스터가 데이터베이스 솔루션을 직접 사용할 때 전반적인 성능을 개선시켜 준다.

리플리케이션 프로세스를 처리하는 동안 문제가 발생한다면, 다음과 같은 방식으로 처리한다:

  • 가능하다면, 릴레이 로그와 데이터 파일을 별도의 디스크 드라이브에 넣는다.
  •  --relay-log 옵션을 사용해서 릴레이 로그 위치를 지정하도록 한다.
  • 마스터 서버는 트랜젝션을 잘 활용하지만 슬레이브에서는 트랜젝션을 지원하지 않아도 된다면, MyISAM 또는 다른 비-트랜젝션 지원 엔진을 사용하도록 한다.
  • 슬레이브가 마스터 역할을 하지 못하는 경우에 마스터를 대체할 수 있는 방법을 가지고 있다면,
    --log-slave-updates
    를 스위치 오프 (switch off)하도록 한다. 이렇게 하면, 'dumb' 슬레이브가 자신의 바이너리 로그에서 실행한 이벤트를 기록하지 못한다.
서울시 강남구 영동대로 602 6층  TEL: 02-6061-0006
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved