반응형
Ant_U
DBA 개미
Ant_U
전체 방문자
오늘
어제
  • 분류 전체보기 (262)
    • AWS (3)
    • C# (1)
    • SQL (236)
      • MYSQL (186)
      • MSSQL (50)
    • 자격증 (20)
      • SQLD (12)
      • SQLP (8)

인기 글

최근 글

250x250
hELLO · Designed By 정상우.
Ant_U

DBA 개미

[MySQL] REPAIR TABLE 문 사용법: 손상된 테이블 복구하기
SQL/MYSQL

[MySQL] REPAIR TABLE 문 사용법: 손상된 테이블 복구하기

2025. 6. 17. 14:14
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보다 백업 및 복원이 더 안전한 방법일 수 있습니다.

실무 적용 팁

  1. 백업 먼저: REPAIR 수행 전에 반드시 원본 파일 백업
  2. QUICK 먼저 시도: 시간이 민감한 경우 QUICK 옵션으로 시도 후, 실패 시 EXTENDED 사용
  3. 서버 로그 확인: 복구 중 발생하는 오류는 MySQL 로그 파일을 통해 확인 가능

결론 및 요약

REPAIR TABLE 문은 MyISAM 테이블에 문제가 생겼을 때 매우 유용한 도구입니다. 하지만 한계와 리스크도 분명하므로, 주의 깊게 사용해야 합니다.

실무 팁:

  • InnoDB에서는 사용하지 않도록 주의하세요.
  • 항상 복구 전에 백업을 우선 확보하세요.
  • 복구 후 CHECK TABLE로 상태를 다시 확인하세요.

공식 문서 링크

MySQL 공식 문서 - REPAIR 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
    'SQL/MYSQL' 카테고리의 다른 글
    • [MySQL] Loadable Functions 삭제하기: DROP FUNCTION 사용법
    • [MySQL] CREATE FUNCTION: Loadable Function 작성법 완벽 가이드
    • [MySQL] OPTIMIZE TABLE 문: 성능 개선을 위한 최적화 전략
    • [MySQL] CHECKSUM TABLE 문 완벽 가이드: 무결성 검증을 위한 실전 팁
    Ant_U
    Ant_U

    티스토리툴바