> 데이터 베이스 > MySQL 튜토리얼 > 멈춰 있는 MySQL 테이블의 \'잠금 대기 시간 초과\'를 해결하는 방법은 무엇입니까?

멈춰 있는 MySQL 테이블의 \'잠금 대기 시간 초과\'를 해결하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-11-25 03:04:11
원래의
221명이 탐색했습니다.

How to Resolve

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

WHERE 절 없이 SQL 업데이트를 실행하는 경우 최근 문제가 발생했습니다. 확장 테이블 잠금 장치에 있습니다. 이로 인해 영향을 받은 인덱스를 삭제하려고 시도하는 동안 "잠금 대기 시간 초과, 트랜잭션 재시작 시도" 오류가 발생했습니다.

이 상황을 해결하려면 중단된 트랜잭션을 식별하고 종료하는 것이 좋습니다. 이는 MySQL 명령줄 인터페이스에서 SHOW PROCESSLIST 명령을 사용하여 실행 중인 스레드를 검사함으로써 달성할 수 있습니다.

걸린 스레드 찾기 및 종료

  1. 다음에 연결합니다. 명령줄 인터페이스를 사용하는 MySQL 데이터베이스
  2. 다음을 실행합니다. 명령:

    SHOW PROCESSLIST;
    로그인 후 복사
  3. 현재 실행 중인 스레드 목록과 해당 ID 및 실행 시간이 표시됩니다.
  4. 과도한 시간 동안 실행된 스레드를 식별합니다.
  5. 멈춘 스레드를 종료하려면 표시된 대로 KILL 명령과 해당 ID를 차례로 실행합니다. 아래:

    KILL <thread ID>;
    로그인 후 복사

예를 들어 ID가 115인 스레드를 종료하려면 다음 명령을 사용합니다.

KILL 115;
로그인 후 복사

걸린 스레드가 종료되면 테이블 잠금이 해제되고 인덱스 삭제 작업이 진행될 수 있습니다. 보통.

위 내용은 멈춰 있는 MySQL 테이블의 \'잠금 대기 시간 초과\'를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿