SqlServer에서 Lock이 걸려있는 procedure를 Kill시킬수 있나요? 0 1 2,837

by 베스트드레곤 [SQLServer] sqlserver lock procedure [2015.03.14 19:29:41]


안녕하세요.

SqlServer에서 Lock이 걸려있는 프로시져를 Kill시킬수 있나요?

답변부탁드립니다.

by 타락천사 [2015.03.16 20:54:06]

아래 명령어 수행 후, kill_cmd 수행 하시면 락 잡고 있는 세션 정리 가능합니다.

SELECT CMD, SPID AS [WAITER], B.TEXT,
            BLOCKED AS [BLOCKDER], ROUND((WAITTIME/1000),1) AS [WAITTIM(S)], LASTWAITTYPE
                ,' KILL '+ CONVERT(VARCHAR(12), BLOCKED)  AS [KILL_CMD]   
      , DB_NAME(A.dbid) as [DATABASE_NAME], LOGIN_TIME, LAST_BATCH, HOSTNAME, PROGRAM_NAME
       , SQL_HANDLE, B.TEXT
FROM   SYS.sysprocesses A
CROSS APPLY SYS.DM_EXEC_SQL_TEXT(A.SQL_HANDLE) AS B
WHERE  SPID > 50 -- Execulde System Processes
AND    blocked > 0

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입