MSSQL 캐시 확인 및 삭제

MSSQL은 쿼리를 실행하기 전에 컴파일을 하고 실행하는데 자원과 시간의 비용을 줄이기 위해서 한번 사용한 쿼리를 재사용하기 위해 캐시에 담아두고 재사용을 합니다.


비용을 줄이기 때문에 좋은 기능이고 사용해야 할 기능이지만, 간혹 해당 캐시를 지워야 하는 경우가 있습니다. 하여 오늘은 MSSQL 캐시 확인 및 삭제에 대해서 알아볼까 합니다.





-- 캐시는 SYSCACHEOBJECTS 시스템 테이블에 정보가 있습니다.
-- Where 문을 이용하면 특정 쿼리문이 들어간 캐시를 추출 할 수 있습니다.
SELECT * FROM SYS.SYSCACHEOBJECTS WHERE [SQL] LIKE '%쿼리문%'

-- 사용중인 캐시 추출
SELECT plan_handle, st.text
FROM sys.dm_exec_cached_plans
CROSS APPLY sys.dm_exec_sql_text(plan_handle) AS st
WHERE text LIKE N'%쿼리문%';

-- 캐시 제거
-- DBCC FREEPROCCACHE (0x05000800E5F00E5FD2452303F4CF)



/*********************************************************************/
-- 데이터베이스 전체 캐시 삭제
/*********************************************************************/
SELECT * FROM SYSDATABASES

SELECT objtype, dbid, usecounts, status, sqlbytes, sql, *
FROM master.dbo.syscacheobjects
WHERE dbid = 8

DBCC FlushPROCINDB(dbid 일련번호)





이상으로 MSSQL 캐시 확인 및 삭제에 대해서 알아보았습니다.
오늘도~~~ 행복하고~~~ 좋은하루~~~ 되세요~~~^^

댓글

이 블로그의 인기 게시물

껌 떼는 법 (완벽 제거)

학점 계산기 (백분위 환산) 완벽 정리

[엑셀] 셀에 수식 적용하는 모든 것 완벽 정리