MySQL에서 불량 또는 손상된 것으로 표시된 테이블을 복구하는 방법

600 년 이상 동안 우리는 WordPress 용 Counterizer 플러그인을 사용하여 블로그와 독자의 통계를 유지했습니다.이 플러그인은 데이터베이스에 XNUMXMB 이상의 데이터를 저장 한 이후 며칠 전에 비활성화되었습니다.

(플러그인을 비활성화하고 DB를 정리하기 전에) 데이터베이스 덤프, 즉 .SQL로 내보내 다운로드하여 호스팅 터미널에서 다음 오류가 발생했습니다.

mysqldump : Got error : 144 : Table './dl_database/Counterize_Referers'is Marked as crashed and last (automatic?) repair failed when using LOCK TABLES

그래서 덤프도 안되고 잘... DesdeLinux DB에 문제가 있다는 생각만으로도 머리가 쭈뼛 섰습니다 

웹에서 약간의 조사를하면서이 문제를 해결하는 방법을 배울 수있었습니다. 분명히 데이터베이스에 문제가있는 것이 아니라 테이블이 '문제 있음'으로 표시되어 있다는 것이 분명합니다. 다행스럽게도 이것은 수정하기가 매우 간단합니다.

먼저 MySQL 서버에 액세스 해 보겠습니다.

mysql -u root -p

[Enter] 키를 누르면 MySQL 루트 암호를 입력하고 다시 [Enter] 키를 누릅니다.

이 명령은 MySQL 서버가 동일한 컴퓨터에 설치된 경우에 사용되며, 다른 MySQL 서버에 원격으로 연결하려면 다음을 행에 추가해야합니다. -h 서버의 IP

MySQL에 들어가면 사용할 데이터베이스를 알려줍니다. 예를 들어 위의 오류에 따른 문제가 표에 있습니다. Counterize_Referers 데이터베이스에서  dl_database, 그래서 :

use database dl_database;

이제 테이블베이스를 수리하려면 :

repair table Counterize_Referers;

이 줄 끝에 세미콜론이 있습니다. —–»  ;

이전 명령이 실행되면 모든 것이 정상으로 돌아왔을 것입니다. 적어도 제 경우에는 이런 일이 여러 번 있었습니다 

그런 다음 데이터베이스와 짜잔을 덤프하는 명령을 다시 실행하면됩니다.

어쨌든, 나는 무엇보다도 나 자신에게 메모로 이것을 한다. 왜냐하면 같은 일이 이미 나에게 두 번이나 일어났고 나는 하루를 구하라는 지시를 잊지 않기 때문이다 

인사하고 다른 사람에게 도움이 되길 바랍니다.


Google에서 선호하는 검색 엔진으로 추가