프로그래밍/데이터베이스

서버의 CPU 사용률 확인하는 쿼리

최봉구 2021. 4. 15. 18:03

어떤놈이 이렇게 많이 쳐먹고 있어?

이상하게 CPU 사용률이 높을때 실행해서 어떤놈이 CPU를 많이 쓰고있는지 확인할 때 쓴다.

 

use tempdb

CREATE TABLE #sp_who2 (SPID INT,Status VARCHAR(255),
      Login  VARCHAR(255),HostName  VARCHAR(255),
      BlkBy  VARCHAR(255),DBName  VARCHAR(255),
      Command VARCHAR(255),CPUTime INT,
      DiskIO INT,LastBatch VARCHAR(255),
      ProgramName VARCHAR(255),SPID2 INT,
      REQUESTID INT)

INSERT INTO #sp_who2 EXEC sp_who2

SELECT A.SPID, B.EVENT_INFO, A.STATUS, A.LOGIN, A.HOSTNAME, A.DBNAME, A.CPUTIME, A.DISKIO, A.LASTBATCH
  FROM #sp_who2 AS A
 CROSS APPLY SYS.dm_exec_input_buffer(A.SPID, NULL) AS B
 WHERE Status = 'RUNNABLE'  --현재 실행중인 놈
 ORDER BY CPUTime DESC
 
  DROP TABLE #sp_who2

 

반응형