본문 바로가기
DataBase/MySQL

[본문스크랩] mysql 테이블 복구

by 백룡화검 2010. 4. 24.

더 윤키맨의 쪼가리 팁:

--------------------------------------------------------------------------------------

 

  mysqldump로 백업을 하는데 에러가 난다. 에러메세지를 찾아보니 테이블이 깨졌단다-_-;

  찾아보니 복구에 관한 정보를 얻을 수 있었다.

 

  - 중요!!

  mysql 데몬이 구동중이면 mysqlcheck를 사용하고, 구동중이지 않을때에는 myisamcheck나

  isamcheck를 사용한다.

 

  쪼가리팁에서는 mysql 쉘 프롬프트 상에서 복구하는 방법을 적어보았다.

 

 

(1) mysql의 테이블 점검

 

CHECK TABLE tbl_name[,tbl_name...] [option [option...]]
(option=QUICK | FAST | MEDIUM | EXTENDED | CHANGED , 기본은 medium)

 

mysql> check table 테이블명;
mysql> check table 테이블명 quick;
mysql> check table 테이블명 fast;
mysql> check table 테이블명 changed;
mysql> check table 테이블명 extended;

등등.. 에러가 있으면 Msg_text 필드에 메세지가 나온다.

 

 

(2) mysql 테이블의 복구

 

REPAIR [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name[,tbl_name...] [QUICK] [EXTENDED]
(option=QUICK| EXTENDED)

mysql> repair table 테이블명;
mysql> repair table 테이블명 quick;
mysql> repair table 테이블명 extended;

 

등등.. 으로 복구가 가능하다.

좀더 자세히 알고싶으면 myisamcheck등으로 검색해보자.