728x90
반응형
REPAIR TABLE 문이란?
MySQL에서 REPAIR TABLE 문은 주로 MyISAM 스토리지 엔진을 사용하는 테이블이 손상되었을 때 복구하는 데 사용됩니다. 시스템 비정상 종료, 디스크 오류, 불완전한 쓰기 등으로 인해 .MYD(데이터 파일), .MYI(인덱스 파일)가 손상될 수 있습니다.
이때 REPAIR TABLE을 통해 테이블을 복구하면 일부 데이터를 복원하거나 인덱스를 재구성할 수 있습니다.
기본 문법과 사용 예제
REPAIR TABLE 테이블명 [QUICK | EXTENDED | USE_FRM];
- QUICK: 인덱스 파일만 복구 (빠르지만 제한적)
- EXTENDED: 데이터 파일까지 재구성 (느리지만 철저)
- USE_FRM: .frm 파일의 구조 정보를 사용해 테이블 복구 (파일이 손상되었을 경우 유용)
예시:
REPAIR TABLE users EXTENDED;
결과는 다음과 같은 형식으로 반환됩니다:
TableOpMsg_typeMsg_text
db.users | repair | status | OK |
주의사항 및 제약
- REPAIR TABLE은 MyISAM 전용입니다. InnoDB나 기타 엔진에서는 사용할 수 없습니다.
- InnoDB 테이블은 충돌 시 자동 복구 메커니즘이 있기 때문에 REPAIR TABLE이 작동하지 않습니다.
- 복구 시 손상된 일부 데이터가 손실될 수 있으며, 복구 후 무결성 검사가 필요합니다.
- 중요한 데이터에는 REPAIR TABLE보다 백업 및 복원이 더 안전한 방법일 수 있습니다.
실무 적용 팁
- 백업 먼저: REPAIR 수행 전에 반드시 원본 파일 백업
- QUICK 먼저 시도: 시간이 민감한 경우 QUICK 옵션으로 시도 후, 실패 시 EXTENDED 사용
- 서버 로그 확인: 복구 중 발생하는 오류는 MySQL 로그 파일을 통해 확인 가능
결론 및 요약
REPAIR TABLE 문은 MyISAM 테이블에 문제가 생겼을 때 매우 유용한 도구입니다. 하지만 한계와 리스크도 분명하므로, 주의 깊게 사용해야 합니다.
실무 팁:
- InnoDB에서는 사용하지 않도록 주의하세요.
- 항상 복구 전에 백업을 우선 확보하세요.
- 복구 후 CHECK TABLE로 상태를 다시 확인하세요.
공식 문서 링크
728x90
반응형
'SQL > MYSQL' 카테고리의 다른 글
[MySQL] INSTALL PLUGIN 사용법: 플러그인 설치와 관리 완벽 이해 (0) | 2025.06.25 |
---|---|
[MySQL] INSTALL COMPONENT 문법: 플러그인과 컴포넌트 설치 완벽 이해 (0) | 2025.06.25 |
[MySQL] Loadable Functions 삭제하기: DROP FUNCTION 사용법 (0) | 2025.06.23 |
[MySQL] CREATE FUNCTION: Loadable Function 작성법 완벽 가이드 (0) | 2025.06.18 |
[MySQL] OPTIMIZE TABLE 문: 성능 개선을 위한 최적화 전략 (0) | 2025.06.17 |
[MySQL] CHECKSUM TABLE 문 완벽 가이드: 무결성 검증을 위한 실전 팁 (0) | 2025.06.17 |
[MySQL] CHECK TABLE 문 완전 정복: 테이블 무결성 검사 방법 (0) | 2025.06.16 |
[MySQL] ANALYZE TABLE 문 완벽 가이드: 통계 최적화의 핵심 (0) | 2025.06.16 |