728x90
-- 가장 조각이 많이 난 인덱스 TOP 10
SELECT TOP 10
DB_NAME() AS 'DatabaseName'
, OBJECT_NAME(S.OBJECT_ID) AS 'TableName'
, I.NAME AS 'IndexName'
, ROUND(AVG_FRAGMENTATION_IN_PERCENT, 2) AS 'Fragmentation %'
FROM SYS.DM_DB_INDEX_PHYSICAL_STATS(DB_ID(),NULL,NULL,NULL,NULL) AS S
INNER JOIN SYS.INDEXES AS I
ON S.OBJECT_ID = I.OBJECT_ID AND S.INDEX_ID = I.INDEX_ID
WHERE S.DATABASE_ID = DB_ID() -- 현재 데이터베이스
AND I.NAME IS NOT NULL -- HEAP은 무시
AND OBJECTPROPERTY(S.OBJECT_ID, 'IsMsShipped') = 0 -- 시스템 개체 무시
ORDER BY [Fragmentation %] DESC
728x90
'IT이야기 > MS-SQL 튜닝' 카테고리의 다른 글
저장 프로시저들을 DB에 추가해서 사용하다보면 호출횟수나 CPU 소모시간 등의 통계요약 쿼리 (0) | 2015.09.10 |
---|---|
해당 데이터베이스에 존재하는 테이블의 모든 인덱스 보기 (0) | 2015.09.03 |