• 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 솔루션
    1. 백업을 위해 Replication 사용
    1. mysqldump를 사용하여 슬레이브 백업
    2. Slave에서 Raw 데이터 백업하기
    3. Master 또는 Slave를 읽기 전용으로 백업하기
    2. 다른 Master 및 Slave 스토리지 엔진에서 복제
    3. 확장(Scale-Out)을 위한 복제
    4. 다른 데이터베이스를 다른 Slave에 복제
    5. Replication 성능을 향상
    6. 장애 발생시 Master 전환
    7. SSL을 사용하여 Replication 설정
    8. Semisynchronous Replication(반동기 복제)
    9. 복제 지연(Delayed 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.3.1.3 Master 또는 Slave를 읽기 전용으로 백업하기

글로벌 읽기 잠금을 획득하고 read_only 시스템 변수를 조작하여 백업 서버의 상태를 읽기 전용으로 변경하여 복제 설정에서 마스터 또는 슬레이브 서버를 백업 할 수 있습니다.

  1. 서버를 읽기 전용으로 설정합니다 (검색 만 처리되고 업데이트는 차단됩니다).

  2. 백업을 실행합니다.

  3. 서버를 일반 읽기 / 쓰기 상태로 되돌립니다.

참고

이 섹션의 절차는 백업 서버를 서버에서 데이터를 검색하는 백업 방식 (mysqldump)에 안전한 상태로 변환합니다 ( 섹션 4.5.4 "mysqldump - 데이터베이스 백업 프로그램" 을 참조하십시오) . 바이너리 백업을 만들려면 파일을 직접 복사하는 방법으로 이러한 절차의 사용을 시도해서는 안됩니다 (서버가 변경된 데이터를 아직 메모리에 캐시하고 디스크로 플러시하지 않을 수 이 때문에).

이후 단계에서는 마스터 서버와 슬레이브 서버에 이렇게하는 방법을 설명합니다. 여기에 설명 된 두 시나리오에서는 다음 복제 설정을 가정합니다.

  • 마스터 서버 M1

  • 마스터로 M1을 가진 슬레이브 서버 S1

  • M1에 연결된 클라이언트 C1

  • S1에 연결된 클라이언트 C2

두 시나리오에서도 글로벌 읽기 잠금을 획득 read_only 변수를 조작하는 문은 백업 서버에서 실행되고 서버의 슬레이브에 전달되지 않습니다.

시나리오 1 : 읽기 전용 마스터의 백업

이 문을 마스터 M1에서 실행하여이를 읽기 전용 상태로합니다.

mysql> FLUSH TABLES WITH READ LOCK;
mysql> SET GLOBAL read_only = ON;

M1이 읽기 전용 상태 일 때 다음 속성이 true가됩니다.

  • C1에 의해 M1에 보내지는 갱신 요청은 서버가 읽기 전용 모드이기 때문에 차단됩니다.

  • C1에 의해 M1에 보내진 쿼리 결과 요청이 성공합니다.

  • M1에서 백업하는 것이 안전합니다.

  • S1으로 백업하는 것은 안전하지 않습니다. 이 서버는 아직 실행 중이고 바이너리 로그를 처리 중이거나 클라이언트 C2에서 들어오는 요청을 업데이트 할 수 있습니다.

M1이 읽기 전용의 경우 백업을 실행하십시오. 예를 들어, mysqldump를 사용할 수 있습니다.

M1에서 백업 작업이 완료된 후 이러한 문을 실행하여 M1을 정상 작동 상태로 복원합니다.

mysql> SET GLOBAL read_only = OFF;
mysql> UNLOCK TABLES;

M1에서 백업을 수행하는 것은 안전하지만 (백업에 관한 한) 성능에 적합하지 않습니다 (M1 클라이언트가 업데이트 실행을 차단하기 때문에).

이 방법은 복제 설치 마스터 서버의 백업에 적용되지만, 비 복제 설치 단일 서버에 사용할 수 있습니다.

시나리오 2 : 읽기 전용 슬레이브로 백업

이 문을 슬레이브 S1에서 실행하여이를 읽기 전용 상태로합니다.

mysql> FLUSH TABLES WITH READ LOCK;
mysql> SET GLOBAL read_only = ON;

S1이 읽기 전용 상태 일 때 다음 속성이 true가됩니다.

  • 마스터 M1이 동작을 계속하고 있기 때문에 마스터에서 백업하는 것이 안전하지 않습니다.

  • 슬레이브 S1이 정지하고 있기 때문에 슬레이브 S1에서 백업하는 것이 안전합니다.

이러한 특성은 일반적인 백업 시나리오의 기초를 제공합니다. 슬레이브가 잠시 백업으로 바쁜에도 문제가 없습니다. 전체 네트워크에 영향을주지 않고 시스템은 백업 중에도 작동하고 있기 때문입니다. 특히 클라이언트는 계속 마스터 서버에서 업데이트를 수행 할 여전히 슬레이브에서 백업 활동에 의한 영향을받지 않습니다.

S1이 읽기 전용의 경우 백업을 실행하십시오. 예를 들어, mysqldump를 사용할 수 있습니다.

S1에서 백업 작업이 완료된 후 이러한 문을 실행하여 S1을 정상 작동 상태로 복원합니다.

mysql> SET GLOBAL read_only = OFF;
mysql> UNLOCK TABLES;

슬레이브는 정상 작동 상태로 돌아온 뒤에 마스터의 바이너리 로그에서 처리되지 않은 갱신을 따라 잡을으로 다시 마스터에 동기화됩니다.

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