Note

Wating for table metadata lock 대처법 본문

etc/SQL

Wating for table metadata lock 대처법

알 수 없는 사용자 2022. 6. 30. 20:28
728x90

데이터베이스에서 작업을 하다보면 종종 쿼리가 실행이 안되고 대기 중일때가 있다.

이 상황이 발생하면 show processlist 를 실행하면 작업 중인 목록이 나온다.

이 때, Wating for table metadata lock 를 마주할 수 있다.

기본적으로 kill (id number) 를 실행 후 재실행 하면 해결이 된다.

하지만, 예를 들어 매일 자동화하는 작업이 있는데 그 작업이 완료 처리가 되지 않아서 실행되지 않는거라면

종료될 때까지 기다려야 하는데, 따로 설정을 해주지 않으면 작업 대기 시간이 꽤 길다.

SELECT* FROM information_schema.INNODB_TRX 을 사용하면 현재 진행중인 테이블과 해당 id number가 나온다.

이를 kill 해주고 원래 실행하려던 쿼리를 실행하면 작동된다.

SELECT * FROM information_schema.INNODB_TRX;

 

 

 

'etc > SQL' 카테고리의 다른 글

Null 값 채우기  (0) 2022.08.01
Between  (0) 2022.07.03
show processlist  (0) 2022.06.29
join update  (0) 2022.06.24
칼럼 내 데이터 수정  (0) 2022.06.23
Comments