[MySQL] LOCK 확인 및 해제 방법

Joney의 SW 공부 블로그·2023년 5월 17일
0

MySQL

목록 보기
4/5

개요

  • MySQL을 사용하다 보면, Transaction이나 모종의 이유로 Lock 상태가 발생
  • 필요에 따라 어느 쿼리가 Lock을 걸렸는지 확인 후 해당 쿼리를 해제해야 할 상황이 발생할 수 있음

Lock을 확인하기 위한 Query

  • 현재 lock 정보 표시
    SELECT * FROM information_schema.INNODB_LOCKS;
  • 현재 wait 으로 대기하고 있는 session 표시
    SELECT * FROM information_schema.INNODB_LOCK_WAITS;
  • 해당 lock을 걸고 있는 transaction의 상태 표시
    SELECT * FROM information_schema.INNODB_TRX;
  • 프로세스 리스트 표시
    SHOW processlist;
    SELECT * FROM information_schema.processlist;

Lock 해제

  • 아래의 Query를 실행해서 Lock 해제 가능
    KILL 2203824;
  • AWS RDS의 경우 KILL로 해제가 안되는 경우가 있음. 이 경우 아래의 Query 실행
    CALL mysql.rds_kill(2204171);
profile
SW 지식 노트 블로그

0개의 댓글