mysql

MySQL session kill

DoDaPa 2024. 5. 17. 08:04

쿼리를 실행했는데 계속 대기 상태라면?

 

해당 쿼리를 강제로 중단시키고 싶을때?

 

1. 우선 admin 권한으로 DB에 접속한다.

 

2.아래 명령어를 실행해서 현재 접속한 계정과 실행되고 있는 쿼리를 확인한다.

> SHOW PROCESSLIST; 

 

3. 아래 명령어를 실행해서 특정 session을 중단시킨다. (Id 필드)

KILL {세션id} ;

 

4. 아래처럼 오류가 발생한다면,

> KILL 40959 ;

SQL Error [1095] [HY000]: You are not owner of thread 40959
  You are not owner of thread 40959
  You are not owner of thread 40959
 
Error code 1095의 경우 mysql.rds_kill 또는 mysql.rds_kill_query 프로시저로 해결이 가능하다.

두 가지다 인자로 쿼리를 실행하고 있는 쓰레드의 id를 넘겨주면 해당 쓰레드에서 돌고 있는 쿼리 혹은 쓰레드를 중지시켜 준다.
CALL mysql.rds_kill( 40959 )
또는
CALL mysql.rds_kill_query( 40959 )
같은 형태로 사용할 수 있다.