투케이2K

101. (MSSQL/SQL) sysprocesses, dm_exec_connections 사용해 현재 데이터베이스 접속 정보 확인 실시 본문

MsSqlDB

101. (MSSQL/SQL) sysprocesses, dm_exec_connections 사용해 현재 데이터베이스 접속 정보 확인 실시

투케이2K 2022. 10. 2. 18:29

[개발 환경 설정]

개발 툴 : SSMS

개발 언어 : MSSQL

 

[소스 코드]

/*
--------------------------------------
[요약 설명]
--------------------------------------
1. spid : SQL Server 세션 아이디
--------------------------------------
2. loginame : 로그인 이름
--------------------------------------
3. login_time : 서버에 로그인한 시간
--------------------------------------
4. last_batch : 원격 저장 프로시저 호출 또는 EXECUTE 문을 마지막으로 실행한 시간
--------------------------------------
5. client_net_address : MSSQL 서버에 연결된 클라이언트의 호스트 주소 IP
--------------------------------------
6. program_name : 응용 프로그램의 이름
--------------------------------------
7. status : 프로세스 아이디 상태
--------------------------------------
8. running : 세션에서 일괄 처리를 하나 이상 실행하는 상태
--------------------------------------
9. background : 세션에서 백그라운드 태스크를 실행하는 상태
--------------------------------------
10. rollback : 세션에서 트랜잭션 롤백을 진행하는 상태
--------------------------------------
11. pending : 세션이 작업자 스레드를 사용할 수 있을 때까지 기다리는 상태
--------------------------------------
12. runnable : 세션이 실행중인 상태
--------------------------------------
13. sleeping : 세션이 작업을 기다리고 있는 상태
--------------------------------------
14. spinloop : 세션이 스핀락에 걸려 있는 상태
--------------------------------------
15. suspended : 세션이 이벤트가 발생할 때까지 대기하고 있는 상태
--------------------------------------
*/



-- -----------------------------------

-- [쿼리 작성]

SELECT S.spid, S.loginame, S.login_time, S.last_batch, C.client_net_address 
    FROM sys.sysprocesses S, sys.dm_exec_connections C 
WHERE S.spid = C.session_id
ORDER BY SPID DESC;

-- ----------------------------------
 

[결과 출력]

 

 

반응형
Comments