• 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 문법
  • 1. 데이터 정의 문
    2. 데이터 조작 문
    3. MySQL 트랜잭션과 잠금 문
    4. 복제 문
    1. 마스터 서버를 제어하는​​ SQL 문
    1. PURGE BINARY LOGS 구문
    2. RESET MASTER 구문
    3. SET sql_log_bin 구문
    2. 슬레이브 서버를 제어하는​​ SQL 문
    5. Prepared Statements위한 SQL 구문
    6. MySQL 복합문 구문
    7. 데이터베이스 관리 문
    8. MySQL 유틸리티 문
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 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 새로운 기능

13.4.1.1 PURGE BINARY LOGS 구문

PURGE { BINARY | MASTER } LOGS
    { TO 'log_name' | BEFORE datetime_expr } 

바이너리 로그는 MySQL 서버에 의해 수행 된 데이터 변경에 대한 정보를 포함 일련의 파일입니다. 이 로그는 일련의 바이너리 로그 파일과 인덱스 파일로 구성되어 있습니다 ( 섹션 5.2.4 "바이너리 로그" 를 참조하십시오).

PURGE BINARY LOGS 문은 지정된 로그 파일 이름 또는 날짜의 앞에있는 로그 인덱스 파일에 나열된 모든 바이너리 로그 파일을 삭제합니다. BINARY 와 MASTER 는 동의어입니다. 삭제 된 로그 파일은 인덱스 파일에 기록되어있는 목록에서 제거되기 때문에 특정 로그 파일이 그 목록의 첫 번째입니다.

이 문은 서버가 바이너리 로깅을 활성화 --log-bin 옵션으로 시작되지 않으면 아무런 효과가 없습니다.

예 :

 PURGE BINARY LOGS TO 'mysql-bin.010';
 PURGE BINARY LOGS BEFORE '2008-04-02 22:46:26';

BEFORE 변형 datetime_expr 인수는 DATETIME 값 ( 'YYYY-MM-DD hh:mm:ss' 형식의 값)에 평가됩니다.

이 문은 슬레이브 복제하는 동안 안전하게 수행 할 수 있습니다. 그들을 막을 필요가 없습니다. 삭제하려고하고있는 로그 파일 중 하나를 현재 읽고있는 활성 슬레이브가 존재하는 경우,이 문은 아무것도하지 않습니다. MySQL 5.6.12 이후에서는 이런 경우 오류로 실패합니다. (Bug # 13727933) 그러나 슬레이브가 연결되어 있지 않을 때 그 노예가 아직 읽어 않은 로그 파일 중 하나를 우연히 삭제 한 경우, 그 노예는 다시 연결 한 후 복제 할 수 없습니다.

바이너리 로그 파일을 안전하게 제거하려면 다음과 같이합니다.

  1. 각 슬레이브 서버에서 SHOW SLAVE STATUS 를 사용하여 슬레이브 서버가 어떤 로그 파일을 읽고 있는지 확인합니다.

  2. SHOW BINARY LOGS 를 사용하여 마스터 서버의 바이너리 로그 파일의 목록을 가져옵니다.

  3. 모든 슬레이브에서 가장 오래된 로그 파일을 식별합니다. 이것이 타겟 파일입니다. 모든 슬레이브가 최신 인 경우 해당 목록에서 마지막 로그 파일입니다.

  4. 삭제하려고하는 모든 로그 파일의 백업을 만듭니다. (이 단계는 선택 사항이지만 항상 실행하는 것이 좋습니다.)

  5. 대상 파일의 직전까지의 모든 로그 파일을 제거합니다.

또한 특정 기간이 지나면 바이너리 로그 파일이 자동으로 만료되도록 expire_logs_days 시스템 변수를 설정할 수 있습니다 ( 섹션 5.1 "서버 시스템 변수" 를 참조하십시오). 복제를 사용하는 경우, 슬레이브가 마스터보다 지연 할 수있는 최대 기간을 밑돌 지 같은 변수를 설정하도록하십시오.

PURGE BINARY LOGS TO 과 PURGE BINARY LOGS BEFORE 은 모두 .index 파일에 나열되어있는 바이너리 로그 파일이 다른 어떤 수단 (Linux에서 rm의 사용 등)에 따라 시스템에서 제거 된 경우 오류 에 실패합니다. (Bug # 18199, Bug # 18453) 이러한 오류를 해결하려면 .index 파일 (이것은 간단한 텍스트 파일)을 수동으로 편집하여 실제로 존재하는 바이너리 로그 파일 만 나열 있는지 확인한 후 실패한 PURGE BINARY LOGS 문을 다시 실행합니다.

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