미스터 역마살

SHOW PROCESSLIST 본문

Database/MYSQL

SHOW PROCESSLIST

Mr. YeokMaSsal 2022. 7. 30. 21:23
728x90
반응형

mysql에서 실행중인 쿼리를 확인 하는 방법은 SHOW PROCESSLIST를 통해 확인 할수 있다.

-- 일반적인 PROCESS 확인
SHOW PROCESSLIST;

-- 쿼리 전체 확인 PROCESS 확인
SHOW FULL PROCESSLIST;

SELECT A.*
  FROM information_schema.PROCESSLIST A


Id|User  |Host                |db          |Command|Time|State    |Info                                                                                                                                                                                                                                                           |
--+------+--------------------+------------+-------+----+---------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
12|tester|118.218.214.230:3313|PARTITION_DB|Query  |   0|query end|INSERT INTO DUMMY_TEST_TB(¶                 HIST_SN ¶        , HIST_DT ¶        , CRUD_TY ¶        , SCRIN_SN ¶        , SCRIN_ID1¶        , SCRIN_ID2¶        , SCRIN_ID3¶        , SCRIN_ID4¶        , SCRIN_ID5¶        , SCRIN_ID6¶        , SCRIN_ID7¶    |
27|tester|%                   |PARTITION_DB|Query  |   0|query end|INSERT INTO DUMMY_TEST_TB(¶                 HIST_SN ¶        , HIST_DT ¶        , CRUD_TY ¶        , SCRIN_SN ¶        , SCRIN_ID1¶        , SCRIN_ID2¶        , SCRIN_ID3¶        , SCRIN_ID4¶        , SCRIN_ID5¶        , SCRIN_ID6¶        , SCRIN_ID7¶    |
34|tester|118.218.214.230:4635|            |Sleep  | 378|         |                                                                                                                                                                                                                                                               |
35|tester|118.218.214.230:4636|            |Sleep  |  36|         |                                                                                                                                                                                                                                                               |
36|tester|118.218.214.230:4637|PARTITION_DB|Query  |   0|starting |/* ApplicationName=DBeaver 21.2.1 - SQLEditor <Script-2.sql> */ SHOW FULL PROCESSLIST                                                                                                                                                                          |
38|tester|118.218.214.230:5357|PARTITION_DB|Sleep  | 378|         |                                                                                                                                                                                                                                                               |

 

 

Processlist의 항목

  • id : 쿼리의 ID로써 PID라고 생각하면 된다. SELECT CONNECTION() 했을 때 나오는 값과 동일
  • User : 쿼리 실행 User
  • Host : 연결 Host Ip
  • db : database명
  • Command
    • Query : 실행중인 쿼리
    • Sleep : 쿼리의 실행이 완료되고 연결만 유지되고 있는 경우를 나타내며 sleep세션이 너무 많고 정리가 안되는 경우 connection full 로 인해 신규 세션 접속이 불가능 해지고 session별 할당되는 메모리로 인해 메모리 부족 현상이 발생할 수 있다.
    • kill : 이 스레드는 다른 스레드를 kill 하고 있음
  • Time : 쿼리 실행시간(초)
  • State : 현재 쿼리가 뭘 하고 있는지 나타냄
    • Wating or Update : 다른 프로세스가 선점하고 있는 잠금을 기다리는 것을 의미함
    • query end : 쿼리 종료
  • Info : 스레드가 실행중인 쿼리문이거나 쿠리를 실행하지 않는 경우 NULL로 표시됨

 

 

 

 

 

728x90
Comments