"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > MySQL에서 \"Lock Wait Timeout Exceeded\" 오류를 수정하는 방법: 고정된 테이블 잠금 해제

MySQL에서 \"Lock Wait Timeout Exceeded\" 오류를 수정하는 방법: 고정된 테이블 잠금 해제

2024년 11월 16일에 게시됨
검색:532

How to Fix \

"멈춘" MySQL 테이블 잠금 해제: "잠금 대기 시간 초과" 문제 해결

"잠금 대기 시간 초과가 발생하면 다시 시작해 보세요. MySQL에서 InnoDB 테이블로 작업하는 동안 "transaction" 오류가 발생하면 트랜잭션이 중단되었을 가능성이 높습니다. 테이블을 수정하고 중단된 트랜잭션을 해결하는 방법은 다음과 같습니다.

1. 중단된 트랜잭션 식별:

MySQL 명령줄 인터페이스 또는 phpMyAdmin을 통해 다음 명령을 실행합니다.

SHOW PROCESSLIST;

이렇게 하면 실행 중인 트랜잭션 목록이 표시됩니다. 스레드. 실행 시간이 길거나 "Sleep" 상태에 있는 스레드를 찾으십시오. 해당 스레드 ID가 "Id" 열에 표시됩니다.

2. 중단된 스레드 종료:

중단된 스레드가 식별되면 명령줄 인터페이스에서 다음 명령을 사용하여 종료합니다.

KILL ;

를 중단된 스레드의 ID로 바꿉니다.

3. 트랜잭션을 다시 시작합니다(선택 사항):

트랜잭션이 여전히 활성 상태인 경우 트랜잭션을 다시 시작하여 보유 중인 잠금을 해제합니다. 다음 명령을 실행하여 이를 수행할 수 있습니다:

START TRANSACTION;
COMMIT;

4. 인덱스 삭제(해당되는 경우):

이전에 영향을 받은 테이블에서 인덱스 삭제를 시도했지만 잠금으로 인해 실패한 경우 중단된 스레드를 종료하고 트랜잭션을 다시 시작한 후 다시 삭제해 보세요. .

ALTER TABLE  DROP INDEX ;

이 단계를 수행하면 중단된 테이블의 잠금을 해제하고 "잠금 대기 시간 초과" 오류를 해결할 수 있습니다. 향후 유사한 문제를 방지하려면 실행 중인 스레드를 정기적으로 확인하여 잠재적인 중단된 트랜잭션을 식별하고 종료해야 합니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3