[MySQL]Error Code: 1205. Lock wait timeout exceeded; try restarting transaction (부제: 갑자기 update, delete, insert가 안 된다면..? )
오늘의 에러명
Error Code: 1205. Lock wait timeout exceeded; try restarting transaction
원래 잘 되던 update, delete, insert 모두 안 되는 문제가 생겼다.
해결
1. processlist 를 확인해본다.
하면
admin에서 완료되지 않은 process들이 여러개이다.
이걸 삭제해준다.
(본인이 하는 업무에 해당하지 않는 process들만)
2. kill <id> 로 process 삭제
결과는,
0 row(s) affected Rows matched: 2 Changed: 0 Warnings: 0
라고 나왔지만
다시 processlist 확인해보면 잘 삭제돼있다.
그 후 update, delete, insert 모두 잘 되는 것을 확인했다.
참고 블로그
[문제해결] Lock wait timeout exceeded; try restarting transaction
현상 DB에서 SQL실행시에 아래와 같은 에러 발생함. Lock wait timeout exceeded; try restarting tr...
blog.naver.com
결국 이분덕에 해결 ㅜㅜ
기타 시도
1. Workbench preferences(기본설정)에서 SQL Editor - MySQL Session 의 interval 값들 수정
각각 1000, 1000, 1000으로 입력했는데
로딩만 오래 걸리지 결과적으론 또 에러 뜬다.
값을 작게 하면 바로 에러 뜨고..
아마 약간 로딩이 더 걸리는 경우엔 괜찮지만
내 DB는 크게 얹힌 것 같았다.
2. SQL로 innodb_lock 을 select(조회)하여 timeout 관련사항 확인
SHOW VARIABLES LIKE '%wait_timeout%';
근데 이걸로 해결할 수 있는 문제가 아닌 것 같아서 또 찾아봄.
그냥 time_out 확인용..
참고 블로그
https://velog.io/@army262/mysql-waittimeout
mysql wait_timeout
aws rds의 mysql을 기본설정으로 셋팅 후 서비스를 개방하면위와 같은 오류를 쉽게 만날 수 있다.물론 유저가 별로 들어오지 않으면 문제는 생기지 않겠지만(ㅠ.ㅠ 서비스가 망했어요) 유저가 어느
velog.io