본문 바로가기
IT/MSSQL

[MSSQL] 데이터베이스 접속 중인 사용자 정보 조회 및 쿼리 확인

by 베베야 2021. 3. 12.
728x90

데이터베이스에 접속 중인 사용자의 정보를 가져오는 방법입니다. 해당 쿼리를 이용해 사용자들의
SPID, 접속자 이름, 로그인 시간, 마지막 쿼리 실행시간, 접속 IP, 접속 프로그램, 실행 중인 명령어를 조회할 수 있습니다.
그리고 SPID를 이용해서 추가적인 세부 정보도 조회가 가능합니다.

 

 

모든 사용자 세션 정보

SELECT S.spid,
       S.loginame as '접속자 이름',
       S.login_time as '로그인 시간',
       S.last_batch as '마지막 쿼리 실행시간',
       C.client_net_address  as '접속 IP' ,
          S.program_name as '접속 프로그램',
          S.cmd as '현재 실행중인 명령어'
FROM   sys.sysprocesses S,
       sys.dm_exec_connections C
WHERE  S.spid = C.session_id

 

실행중인 쿼리 자세히 확인

--SPID를 이용한 실행중인 쿼리 조회
DBCC INPUTBUFFER (454) -- ex) DBCC INPUTBUFFER (51)


실행중인 쿼리 cpu 부하율 확인

--SPID를 이용한 쿼리실행 유저 및 CPU 점유율 확인
exec sp_who2 454 -- sp_who2 를 실행하면 cpu 점유율 을 볼수있다 ex) exec sp_who2 51


이상으로 데이터베이스에 접속 중인 사용자들의 정보와 그 정보를 이용해서 사용한 쿼리 문과 CPU 사용률 등을
자세하게 보는 방법까지 알아보았습니다.

반응형
그리드형

댓글