WP CLI는 DB를 복구해야 하지만 WP 자체는 작동한다고 주장합니다.
배포/업그레이드 스크립트에서 wp-cli를 사용합니다.현재 다음 오류가 발생했습니다.wp core is-installed
(내 스크립트가 wp cli로 수행하는 첫 번째 명령)
오류: 하나 이상의 데이터베이스 테이블을 사용할 수 없습니다.데이터베이스를 복구해야 할 수 있습니다.
그래서 뛰었습니다.mysqlcheck --all-databases --check --extended
DB 오류가 무엇인지 확인하지만 모든 테이블이 정상이라고 보고합니다!
또한 사이트 자체가 작동하는 것처럼 보이기 때문에(관리자 로그인, 페이지 보기 등이 가능) 한편으로는 wp-cli 문제처럼 느껴지지만, 다른 한편으로는 wp core 또는 DB에서 발생합니다.
제가 어디서 찾을 수 있는지 아는 사람 있나요?아파치 로그에는 항상 발생하는 몇 가지 경고 외에는 아무것도 없습니다.
WordPress 5.4.2 및 wp-cli 2.4.0을 실행합니다.처음 오류가 발생했을 때는 WP 버전을 이전에 업데이트한 후 "업그레이드" 루틴을 실행하지 않았지만, 관리자로 들어가 "네트워크 업그레이드"를 클릭했습니다.성공했지만 CLI는 여전히 실패합니다.
데이터베이스는 10.4.13-MariaDB이고 PHP 버전은 7.3.19입니다. Cent에서 실행됩니다.OS Linux.
mariadb.log를 확인했습니다(고맙습니다 @nbk).사이트나 wp-cli 명령을 실행할 때는 아무 것도 나오지 않습니다.그러나 실행 시mysqlcheck
명령 다음과 같은 오류가 발생합니다.
[ERROR] InnoDB: 인덱스 레코드의 순서가 잘못되었습니다.
option_name
식탁의myschema
.wp_options
전체 스키마를 내보내거나 다시 가져오려고 합니다.
DB는 어떻게든 utf8 테이블과 utf8mb4 테이블을 혼합한 것으로 보입니다.방법을 잘 모르겠습니다.MariaDb 버전 업그레이드 전후에 생성된 것으로 추측하지만 사실인지는 모르겠습니다.어쨌든, 우리는 전체 스키마를 내보내고, 덤프 파일의 데이터 정렬을 수정한 후 다시 가져오는 방식으로 해결했습니다.
만약 버그가 있다면, 그것은 그 안에 있다고 말할 것입니다.mysqlcheck
mariadb.log에서 잘못된 형식의 레코드에 대한 오류를 트리거하는 동안에도 모든 것을 정상으로 보고한 명령입니다.
언급URL : https://stackoverflow.com/questions/62646343/wp-cli-claims-db-needs-repairing-but-wp-itself-works
'programing' 카테고리의 다른 글
Mariadb에서 봄 부츠와 긴 트랜잭션 [소켓 예외] (0) | 2023.08.15 |
---|---|
주소 표시줄 표시 시 100vh 높이 - Chrome Mobile (0) | 2023.08.15 |
인터페이스 또는 TARGET_CLASS: 어떤 프록시 모드를 선택해야 합니까? (0) | 2023.08.15 |
도커 구성:해당 이미지 없음 (0) | 2023.08.15 |
MariaDB 트리거 시간 차이를 총 시간의 소수점과 시간의 10분의 1로 계산 항상 반올림 (0) | 2023.08.15 |