테이블이 손상된 것으로 표시되어 수리해야합니다


191

워드 프레스 phpMyadmin 에서이 오류가 발생합니다.

#145 - Table './DB_NAME/wp_posts' is marked as crashed and should be repaired 

phpMyadmin에 로그인하면 wp_posts가 "사용 중"이라고 표시됩니다

이로 인해 내 웹 사이트가 현재 다운되었습니다.

이 문제를 봤지만 phpMyadmin에 "복구"버튼이 보이지 않습니다. 이 문제를 해결하는 방법을 알려주십시오. PHP 명령을 어디에서 실행할지 잘 모르겠습니다. PHP에 대한 저의 숙련도는 매우 기본적입니다.

답변:


215

복구 버튼이있는 위치는 다음과 같습니다.

대체 텍스트


183

서버의 명령 행에서이를 실행하십시오.

 mysqlcheck --repair --all-databases

45
'액세스 거부'오류를 피하려면이 명령에 사용자 이름과 비밀번호를 추가해야합니다. mysqlcheck -uroot -p --repair --all-databases암호를 입력하십시오.
wruckie

120

사용 가능한 서버 여유 디스크 공간이 0 일 때 동일한 문제가 발생했습니다.

당신은 명령을 사용할 수 있습니다 (mysql 파일을위한 충분한 공간이 있어야합니다)

REPAIR TABLE `<table name>`;

개별 테이블 수리 용


도움이되자 Drupal v7.6x UC 테이블에서이 문제가 발생했습니다. phpMyAdmin SQL 콘솔에서 위와 같이 REPAIR TABLE 명령을 실행하고 수정했습니다. stackoverflow에 감사합니다 !! 건배!
Paul B

25

SSH를 통해 서버에 연결

그런 다음 mysql 콘솔에 연결하십시오.

USE user_base
REPAIR TABLE TABLE;

-또는-

현재 데이터베이스에 깨진 테이블이 많이있는 경우 :

mysqlcheck -uUSER -pPASSWORD  --repair --extended user_base

많은 데이터베이스에 깨진 테이블이 많이있는 경우 :

mysqlcheck -uUSER -pPASSWORD  --repair --extended -A

2
명령 행에 비밀번호를 입력하지 않으면 보안되지 않은 방식과 위치로 히스토리에 저장됩니다. mysql 명령을 사용하면 매개 변수 -p만 전달하면 암호를 묻습니다.
Thierry J.

7

이 오류가 발생했을 때 :

# 145-테이블 '. \ engine \ phpbb3_posts'가 충돌로 표시되어 복구되어야합니다.

PhpMyAdmin에서이 명령을 실행하여 문제를 해결했습니다.

REPAIR TABLE phpbb3_posts;

6

즉, MySQL 테이블이 손상되어 복구해야합니다. 사용하다

myisamchk -r /DB_NAME/wp_posts

명령 행에서. 복구를 실행하는 동안 복구하는 동안 데이터베이스에 대한 새로운 연결이 시도되지 않도록 웹 사이트를 일시적으로 종료해야합니다.


나는 위의 의견에 이것을 물었지만 그는 그가 로그 아웃되어 다시 당신에게 묻는 것 같아요. "정말 감사합니다. 사이트가 다시 온라인 상태로 돌아 왔습니다. 데이터베이스가 손상되어 다시 복구 할 때 한 가지 질문은 무엇이든 걱정해야합니까? 다른 문제가 발생했는지 조사해야합니까? 그렇지 않은 경우주의해야합니다. "모든 것의?"
John Connor

당신은 아무것도 걱정할 필요가 없습니다. 데이터베이스가 복구되면 사이트가 다시 작동합니다. 어느 시점에서 다시 손상 될 수 있습니다. 발생하면 다시 수리하십시오. 또한 정기적으로 백업을하면 괜찮을 것입니다
Dmitri
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.