MySQL 서버에서 실행되고 있는 쿼리 목록을 보려면 show processlist 명령어를 사용한다.
MySQL 실행 쿼리 확인
실행 프로세스 확인
MariaDB [mysql]> show processlist;
select sleep(9999) 쿼리를 날려놓고 확인해보면 root 계정으로 해당 쿼리를 실행하고 있는 걸 확인할 수 있다. 로컬에서 실행했고, mysql db를 사용중이며 확인 시점 기준 43초 동안 실행 중인 것을 알 수 있다. info에선 실행하고 있는 쿼리가 보인다.
- 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)