MSSQL 에서 LOCK 을 모니터링 하기 위하여 SP_LOCK 을 사용하게 되는데,
기존 정렬이 SPID ASC 여서 접속한 Process 가 많을 경우 스크롤을 해야하는 불편함이 존재 합니다.
기본 SP_LOCK 의 쿼리에서 정렬만 추가하여 베타적 잠금이 위에 오도록 수정 하였습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | select convert (smallint, req_spid) As spid, rsc_dbid As dbid, rsc_objid As ObjId, rsc_indid As IndId, substring (v.name, 1, 4) As Type, substring (rsc_text, 1, 32) as Resource, substring (u.name, 1, 8) As Mode, substring (x.name, 1, 5) As Status , xname = (case when u.name like '%x%' then 1 else 0 end) from master.dbo.syslockinfo, master.dbo.spt_values v, master.dbo.spt_values x, master.dbo.spt_values u where master.dbo.syslockinfo.rsc_type = v.number and v.type = 'LR' and master.dbo.syslockinfo.req_status = x.number and x.type = 'LS' and master.dbo.syslockinfo.req_mode + 1 = u.number and u.type = 'L' --and u.name like '%x%' order by xname desc, spid asc | cs |
[실행 결과] - 베타적 잠금이 조회 결과 상단에 오게 됩니다.
조회가 완료 되셨으면 dbcc inputbuffer(SPID) 쿼리를 실행하여 잠금이 발생한 쿼리를 확인 하시면 됩니다.
'Database & Data > MSSQL' 카테고리의 다른 글
Oracle NEXT_DAY 함수를 MSSQL NEXT_DAY 로 만들기 (0) | 2020.02.17 |
---|---|
[MSSQL] 트리구조 탐색 쿼리 - 모든 부모 node 탐색 (0) | 2019.10.24 |
MSSQL- 복제 관련 조회 쿼리 (0) | 2018.10.28 |
MSSQL 트랜잭션 로그 축소 (0) | 2018.08.12 |
MSSQL 문자열을 파싱하여 테이블 구조로 변환 (0) | 2018.08.05 |