MySQL 테이블이 충돌로 표시되고 마지막 (자동?) 복구 실패
나는이 테이블을 갑자기 수리하고 서버가 중단 표시 모든 테이블을 다시 반환 할 때 괜찮지만이 테이블은 '사용 중'을 표시하고 복구 할 때 진행되었습니다.
오류 144- 테이블 './extas_d47727/xzclf_ads'가 충돌로 표시되고 마지막 (자동?) 복구 실패
수리해야 할 필요가 있습니까?
MySQL 프로세스가 실행 중이면 중지하십시오. 데비안에서 :
sudo service mysql stop
데이터 폴더로 이동하십시오. 데비안에서 :
cd /var/lib/mysql/$DATABASE_NAME
달리기를 시도하십시오.
myisamchk -r $TABLE_NAME
그래도 작동하지 다음을 시도해 사용.
myisamchk -r -v -f $TABLE_NAME
MySQL 서버를 다시 시작할 수 있습니다. 데비안에서 :
sudo service mysql start
다음 쿼리를 실행하십시오.
repair table <table_name>;
나는 같은 문제가 있지만 문제를 해결했다.
/ var / lib / mysql로 이동하는 동안 권한 거부가 발생하면 다음 해결책을 사용하십시오.
$ cd /var/lib/
$ sudo -u mysql myisamchk -r -v -f mysql/<DB_NAME>/<TABLE_NAME>
수리 명령문에 USE_FRM을 추가해야 작동합니다.
REPAIR TABLE <table_name> USE_FRM;
내가 가지고 myisamchk: error: myisam_sort_buffer_size is too small
오류로.
해결책
myisamchk -r -v mysql/<DB_NAME>/<TABLE_NAME> --sort_buffer_size=2G
테이블 을 복구 한 후 파일로 이동하여 data_dir
제거하십시오 .Your_table.TMP
<Your_table>
이것이 100 % 솔루션입니다. 나는 그것을 직접 시도했다.
myisamchk -r -v -f --sort_buffer_size = 128M --key_buffer_size = 128M / var / lib / mysql / databasename / tabloname
기존의 시도의 옵션을 시도했는데, 주로 시나리오에서 작동하지 않는 올바른 표시입니다. 그러나 phpMyAdmin을 사용하여 작동했습니다. 데이터베이스를 선택한 다음 테이블을 선택하고 맨 아래 드롭 다운 메뉴에서 "Repair table"을 선택합니다.
- 서버 유형 : MySQL
- 서버 버전 : 5.7.23-MySQL 커뮤니티 서버 (GPL)
- phpMyAdmin : 버전 정보 : 4.7.7
'IT' 카테고리의 다른 글
IIS 8.0에서 글꼴 얼굴이 작동하지 않습니다. (0) | 2020.07.18 |
---|---|
Swift에서 단색으로 UIImage 생성 (0) | 2020.07.18 |
PHP에서 문을 어기는 방법은 무엇입니까? (0) | 2020.07.18 |
소스 이미지가없는 경우 대체 이미지를 표시하는 방법은 무엇입니까? (0) | 2020.07.18 |
숫자가 짝수인지 홀수인지 확인 (0) | 2020.07.18 |