MySQL 실행 중인 쿼리 목록 확인, 중지 방법

MySQL 서버에서 실행되고 있는 쿼리 목록을 보려면 show processlist 명령어를 사용한다.

MySQL 실행 쿼리 확인

실행 프로세스 확인

MariaDB [mysql]> show processlist;

select sleep(9999) 쿼리를 날려놓고 확인해보면 root 계정으로 해당 쿼리를 실행하고 있는 걸 확인할 수 있다. 로컬에서 실행했고, mysql db를 사용중이며 확인 시점 기준 43초 동안 실행 중인 것을 알 수 있다. info에선 실행하고 있는 쿼리가 보인다.

show processlist
  • Id : 프로세스 고유 ID
  • User : 해당 프로세스를 실행 중인 사용자
  • Host : 해당 프로세스가 실행된 호스트
  • db : 프로세스가 접근하는 데이터베이스 이름. NULL은 특정 데이터베이스에 연결되지 않았음을 의미
  • Command : 현재 실행 중인 명령의 종류
  • Time : 해당 명령이 실행된 시간(초)
  • State : 현재 프로세스 상태
  • Info : 추가 정보. 실행 쿼리 확인 가능
  • Progress : 백그라운드 작업의 진행 상태 (정확한지는 잘 모르겠다)

실행 프로세스 중지

중지는 kill 명령어를 사용한다. processlist에서 확인한 Id를 체크해서 킬하면 된다.

kill [프로세스ID];
MariaDB [mysql]> kill 10;
Query OK, 0 rows affected (0.013 sec)

댓글 남기기