출처 : http://polyphagia.egloos.com/10231978


아래 내용을 쿼리분석기에서 실행하면 찾으려는 단어가 포함된 프로시저 명을 알려준다.

단위는 데이터베이스 단위로 검색이 이루어져 특정 문자가 들어간 프로시저를 찾을때 용이하다.

 

-- 프로시저 검색
SELECT O.name
FROM   sysobjects O JOIN syscomments C
ON     O.id = C.id
WHERE  O.type = 'P' AND C.text LIKE '%찾으려는 단어%'


COPY & PASTE 로 간편하게 사용할 수 있는 SQL Server Trobleshooting 에 필요한 쿼리들을 정리하려고 합니다. 다소 심플하며 성의없어(?) 보이는 포스팅이 이어질지 모르겠습니다만 이 모든 것이 이~편한 세상을 위한 것임으로 ... ㅋㅋㅋ 

 

 

sys.dm_exec_requests

 

SQL Server 내에서 실행 중인 각 요청에 대해 현재 처리 상태를 확인합니다. 예를 들어, 대용량 DB CHECKDB 하면서 소요 예상 시간이 궁금할 , 현재 쿼리 요청에 대한 작업 상태를 확인할 , 유용하게 적용할 있습니다. 

 

아래 예제는 Session ID 51에 대한 진행되는 명령어, 실행 상태, 진행 작업의 백분율을 확인할 수 있습니다.

이 때, Session ID 51에서는 DBCC CHECKDB 를 수행하고 있는 상태입니다.

SELECT session_id, command, status, percent_complete FROM sys.dm_exec_requests 

WHERE session_id = '51';

 

 

[실행결과]

 

session_id     command                    status                percent_complete

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

51               DBCC TABLE CHECK      runnable            84.04607

(1개 행 적용됨)

 

 

[참고자료]

sys.dm_exec_requests

http://technet.microsoft.com/ko-kr/library/ms177648(SQL.90).aspx

 

원본 위치 <http://laigo.kr/111

--1. 블러킹 정보 확인
SELECT * FROM SYS.sysprocesses WHERE blocked > 0

SP_WHO
SP_WHO2

--2. lock 세부 정보
sp_lock

select *
from sys.dm_tran_locks


--3. 실행쿼리 확인
DBCC INPUTBUFFER(58)


--4.KILL

KILL 58


/*
BEGIN

IF OBJECT_ID('UNILITE.LOCK_TEST') IS NOT NULL
DROP TABLE UNILITE.LOCK_TEST

CREATE TABLE UNILITE.LOCK_TEST
(
ID INT ,
ITEM VARCHAR(20),
QTY INT
)


BEGIN TRAN


INSERT INTO LOCK_TEST (ID, ITEM, QTY)
VALUES(1, 'APPLE',20)
--ROLLBACK
--COMMIT

END


BEGIN

SELECT *
FROM LOCK_TEST

END


+ Recent posts