• 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. 백업 및 복구
  • 1. 백업 및 복구의 종류
    2. 데이터베이스 백업 방법
    3. 백업 및 복구 전략의 예
    4. 백업에 mysqldump의 사용
    5. 바이너리 로그를 사용한 시점 (증분) 복구
    6. MyISAM 테이블의 보수와 크래쉬 복구
    1. 충돌 복구에 myisamchk 사용
    2. MyISAM 테이블의 오류 검사 방법
    3. MyISAM 테이블의 복구 방법
    4. MyISAM 테이블의 최적화
    5. MyISAM 테이블 유지 관리 일정 설정
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 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 새로운 기능

7.6.1 충돌 복구에 myisamchk 사용

이 섹션에서는 MySQL 데이터베이스의 데이터 손상을 검사하고 처리하는 방법을 설명합니다. 테이블이 자주 파손되는 경우는 그 이유를 찾을 수 있도록하십시오. 섹션 B.5.4.2 "MySQL이 계속 충돌하는 경우의 대처 방법" 을 참조하십시오.

MyISAM 테이블이 어떻게 손상 될 가능성이 있는지에 대한 설명은 섹션 15.2.4 "MyISAM 테이블 문제" 를 참조하십시오.

외부 잠금을 해제하고 mysqld를 실행 한 (이것은 기본값입니다) 경우, mysqld가 같은 테이블을 사용할 때 myisamchk를 사용하여 테이블을 확실히 체크 할 수 없습니다. myisamchk를 실행하는 동안 mysqld를 통해 테이블에 아무도 접근하지 않는 것을 확신한다면, 테이블 검사를 시작하기 전에 mysqladmin flush-tables를 실행해야 할뿐입니다. 이를 보장 할 수없는 경우에는 테이블 점검 중에 mysqld를 중지해야합니다. myisamchk를 실행하여 mysqld가 동시에 업데이트하는 테이블을 선택하면 테이블이 손상되지 않고 손상된라는 경고를받을 수 있습니다.

외부 잠금을 사용하여 서버를 실행하려면 myisamchk를 사용하여 언제든지 테이블을 확인할 수 있습니다. 이 경우 서버가 myisamchk에서 사용하는 테이블을 업데이트하려고하면 서버는 myisamchk이 끝날 때까지 기다린 다음 계속합니다.

myisamchk를 사용하여 테이블을 복구하거나 최적화하는 경우, mysqld 서버가 그 테이블을 사용하고 있지 않은지 항상 확인해야합니다 (이것은 외부 잠금이 해제되는 경우에도 적용됩니다 매스). mysqld를 중지하지 않으면, myisamchk을 실행하기 전에 적어도 mysqladmin flush-tables를 실행하십시오. 서버와 myisamchk가 동시에 테이블에 액세스하면 테이블이 손상 될 수 있습니다.

충돌 복구를 실행하면 데이터베이스의 각 MyISAM 테이블 tbl_name 은 다음 표에 나열된 데이터베이스 디렉토리에있는 3 개의 파일에 대응하는 것을 이해하는 것이 중요합니다.

FilePurpose
tbl_name.frmDefinition (format) file
tbl_name.MYDData file
tbl_name.MYIIndex file

이 세 가지의 파일 형식은 각각 다양하게 손상 될 수 있지만, 대부분의 경우에 문제는 데이터 파일과 인덱스 파일에서 발생합니다.

myisamchk는 .MYD 데이터 파일의 사본을 각 행에 작성하여 작동합니다. 이것은 오래된 .MYD 파일을 삭제하고 새로운 파일을 원래의 파일 이름으로 변경하여 복구 단계를 종료합니다. --quick 을 사용했을 경우, myisamchk는 임시 .MYD 파일을 생성하지 않고, 대신에 .MYD 파일이 옳다고 보며, .MYD 파일에 손을 대지 않고 새로운 인덱스 파일 만 생성합니다. myisamchk는 .MYD 파일이 손상된 여부를 자동으로 감지하고 손상된 경우 복구를 중지하기 위해 지금은 안전합니다. myisamchk에 --quick 옵션을 두 번 이상 지정할 수 있습니다. 이 경우, myisamchk는 일부 오류 (중복 키 에러 등)에서 중지하지 않고 .MYD 파일을 수정하고이를 해결하려고합니다. 일반적으로 2 개의 --quick 옵션의 사용은 일반적으로 복구를 수행하기 위해 디스크 공간이 너무 적은 경우에만 유용합니다. 이 경우 적어도 myisamchk를 실행하기 전에 테이블을 백업하십시오.

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