• 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 설정 방법
    1. Replication 마스터 구성 설정
    2. Replication 슬레이브 구성 설정
    3. Creating a User for Replication
    4. Replication 마스터 바이너리 로그 좌표 취득
    5. mysqldump를 사용하여 데이터 스냅 샷 생성
    6. Raw data 파일을 사용하여 데이터 스냅 샷 생성
    7. 새로운 마스터와 슬레이브를 사용한 복제 설정
    8. 기존 데이터에 의한 복제 설정
    9. 기존 복제 환경에 추가 슬레이브의 도입
    10. 슬레이브에서 마스터 구성 설정
    2. Replication Formats
    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.1.6 로우 데이터 파일을 사용하여 데이터 스냅 샷 생성

데이터베이스가 큰 경우 로우 ​​데이터 파일을 복사하는 것이 mysqldump를 사용하여 각 슬레이브에서 파일을 가져올보다 효율이 높아지는 경우가 있습니다. 이 방법에서는 INSERT 문이 반복 될 때 인덱스 업데이트의 오버 헤드가 생략됩니다.

복잡한 캐시 또는 로깅 알고리즘을 가진 스토리지 엔진의 테이블에서이 방법을 사용하면 완전한 "시점"스냅 샷을 작성하기위한 추가 단계가 필요합니다. 글로벌 읽기 잠금을 획득 한 경우 첫 번째 복사 명령은 캐시 정보와 로깅 업데이트가 제외 될 수 있습니다. 스토리지 엔진이 이에 어떻게 반응하는지 그 충돌 복구 능력에 따라 다릅니다.

마스터와 슬레이브로 ft_stopword_file , ft_min_word_len 또는 ft_max_word_len 값이 달리 전체 인덱스를 가진 테이블을 복사하는 경우에도이 방법이 제대로 작동하는 것은 아닙니다.

InnoDB 테이블을 사용하는 경우 MySQL Enterprise Backup 구성 요소에서 mysqlbackup 명령을 사용하여 일관된 스냅 샷을 만들 수 있습니다. 이 명령은 나중에 슬레이브로 사용하기 위해 스냅 샷에 대응하는 로그 명과 오프셋을 기록합니다. MySQL Enterprise Backup은 MySQL Enterprise 구독의 일부로 포함되는 제품입니다. 자세한 내용은 섹션 25.2 "MySQL Enterprise Backup" 을 참조하십시오.

또는 콜드 백업 기술을 사용하여 InnoDB 테이블의 신뢰할 수있는 바이너리 스냅 샷을 가져옵니다. MySQL Server의 슬로우 종료 를 실행 한 후 모든 데이터 파일을 복사합니다.

MyISAM 테이블의 로우 데이터 스냅 샷을 생성하려면 MySQL 데이터 파일을 단일 파일 시스템에 존재하는 조건에서 cp, copy와 같은 표준 복사 툴, scp, rsync와 같은 원격 복사 툴, zip, tar 등의 아카이브 도구 dump 등의 파일 시스템 스냅 샷 도구를 사용할 수 있습니다. 특정 데이터베이스 만 복제하면 그 테이블에 관련된 파일 만 복사합니다. ( InnoDB 의 경우 모든 데이터베이스의 모든 테이블은 innodb_file_per_table 옵션을 사용하는 경우를 제외하고는 system tablespace 파일에 저장됩니다.)

다음 파일은 명확하게 아카이브에서 제외하는 것이 좋습니다.

  • mysql 데이터베이스 관련 파일.

  • (사용하는 경우) 마스터 정보 저장소 파일 ( 섹션 17.2.2 "복제 릴레이 및 상태 로그" 를 참조하십시오).

  • 마스터의 바이너리 로그 파일.

  • 릴레이 로그 파일.

로우 데이터 스냅 샷에서 가장 일관성있는 결과를 얻으려면 다음과 같이 과정에서 마스터 서버를 종료합니다.

  1. 읽기 잠금을 획득 마스터의 상태를 가져옵니다. 섹션 17.1.1.4 "복제 마스터 바이너리 로그 좌표 얻기" 를 참조하십시오.

  2. 개별 세션에서 마스터 서버를 종료합니다.

     shell> mysqladmin shutdown
    
  3. MySQL 데이터 파일의 복사본을 만듭니다. 다음 예제에서는이를 수행하는 일반적인 방법을 보여줍니다. 이 중 하나를 선택해야합니다.

    shell> tar cf /tmp/db.tar ./data
    shell> zip -r /tmp/db.zip ./data
    shell> rsync --recursive ./data /tmp/dbdata
    
  4. 마스터 서버를 다시 시작합니다.

InnoDB 테이블을 사용하지 않는 경우 다음 단계에 설명 된대로 서버를 종료하지 않고 마스터 시스템의 스냅 샷을 얻을 수 있습니다.

  1. 읽기 잠금을 획득 마스터의 상태를 가져옵니다. 섹션 17.1.1.4 "복제 마스터 바이너리 로그 좌표 얻기" 를 참조하십시오.

  2. MySQL 데이터 파일의 복사본을 만듭니다. 다음 예제에서는이를 수행하는 일반적인 방법을 보여줍니다. 이 중 하나를 선택해야합니다.

    shell> tar cf /tmp/db.tar ./data
    shell> zip -r /tmp/db.zip ./data
    shell> rsync --recursive ./data /tmp/dbdata
    
  3. 읽기 잠금을 획득 한 클라이언트에서 잠금을 해제합니다.

     mysql> UNLOCK TABLES;
    

데이터베이스의 보관이나 복사를 작성한 후 슬레이브 복제 프로세스를 시작하기 전에 각 슬레이브에 파일을 복사합니다.

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