입니다. Lock wait timeout exceeded; try restarting transaction
오류가 있습니다. 이 문제의 원인과 문제를 해결하는 방법은 무엇입니까? FYI : innodb_lock_wait_timeout = 100
은 MySQL 설정 파일에 있습니다.MySQL 잠금 대기 시간 초과가
4
A
답변
6
이 문제는입니다.이 잠금은 결국 잠금 장치 중 하나에서 시간 초과가 발생합니다. 여기에 몇 가지 제안은 다음과 같습니다
- 당신이 행 수준 잠금하지 테이블 수준 잠금이 발생할 올바른 인덱스가 있는지 확인합니다. 이것은 경합을 줄입니다.
- 외래 키 제약 조건에 대한 색인이 있는지 확인하십시오.
insert
또는update
동안 관계형 제약 조건을 검사하려면 해당 인덱스가없는 경우 일부 데이터베이스는 참조 된 테이블 전체를 잠급니다 (MySQL의 경우인지는 알 수 없음) - 문제가 계속 발생하면 트랜잭션을 시도하십시오 빠르거나 작다. 다시 말하지만, 이것은 데이터베이스의 경합을 줄입니다.
- 제한 시간을 늘리십시오. 그러나 합리적인 값으로 유지하십시오.
0
트랜잭션이 오래 걸리는 긴 트래 피킹 시스템 (예 : 테이블이 오랫동안 잠겨 있음)에서 이러한 현상이 발생합니까? 그렇다면 트랜잭션 코드를 조사하여 트랜잭션 코드를 더 짧게/세밀하게 /보다 효율적으로 만들 수 있습니다.
관련 문제
- 1. mysql 오류 : 잠금 대기 시간 초과가
- 2. MySQL 오류 1205 : 잠금 대기 시간 초과가
- 3. innodb 잠금 대기 제한 시간
- 4. 최대 절전 모드 잠금 대기 시간 초과가 초과되었습니다.
- 5. MySQL, 인덱스 및 "대기 대기 시간 초과"
- 6. SQL 서버 오류 - 잠금 요청 시간 초과가
- 7. 행을 삭제하면 잠금 시간 초과가 발생합니다.
- 8. 뮤텍스 잠금 대기 시간 및 워치 독
- 9. PHP에서 mysql 대기 시간 초과 받기
- 10. SQL : 쿼리 시간 초과가 만료되었습니다.
- 11. PHP에서 시스템 ($ cmd) 시간 초과가
- 12. COM Interop에 시간 초과가 발생했습니다.
- 13. 저장소를 복제하면 시간 초과가 발생합니다.
- 14. URLLoader.load 연결에서 시간 초과가 무엇입니까?
- 15. Eunit 시간 초과가 작동하지 않습니다.
- 16. 세션 시간 초과가 Asp.Net에서 연장됩니다.
- 17. 캐치 시간 초과가 ASP에서 만료되었습니다
- 18. 액티브 "MySQL의 :: 오류 : 초과 잠금 대기 시간 초과"명백한 잠금 장치
- 19. 스레드가 잠금 FIFO에서 대기 중입니까?
- 20. Amazon EC2 대기 시간
- 21. Webdriver 대기 시간 문제
- 22. 대기 시간 문제
- 23. 측정 대기 시간
- 24. Ping에서 대기 시간 관련
- 25. 로그 작업 대기 시간
- 26. AudioQueueNewInput 콜백 대기 시간
- 27. Java에서 대기 시간 시뮬레이션
- 28. 데이터베이스 네트워크 대기 시간
- 29. 대기 시간 해외
- 30. 연결을 시도 할 때 연결 시간 초과가