출처: DBGuide
다음 쿼리를 응용하시면 사용하지 않는 인덱스를 쉽게 찾아 낼 수 있습니다. 아래 쿼리는 적어도 최근 15일간 사용이 없는 인덱스와 통계를 찾아내는 쿼리입니다.
다음 쿼리를 응용하시면 사용하지 않는 인덱스를 쉽게 찾아 낼 수 있습니다. 아래 쿼리는 적어도 최근 15일간 사용이 없는 인덱스와 통계를 찾아내는 쿼리입니다.
/* 테이블별 인덱스에 대한 통계가 마지막으로 업데이트된 날짜 찾기 이종희 2003.10. 정원혁 2004.8. */ SELECT USER_NAME( OBJECTPROPERTY( i.id, 'OwnerID' ) ) AS Owner , OBJECT_NAME( i.id ) AS [Table] , i.name AS [Index] , CASE INDEXPROPERTY( i.id , i.name , 'IsClustered') WHEN 1 THEN 'Y' ELSE '' END AS IsClustered , CASE INDEXPROPERTY( i.id , i.name , 'IsUnique' ) WHEN 1 THEN 'Y' ELSE '' END AS IsUnique , STATS_DATE( i.id , i.indid ) AS LastUpdatedDate , dPages * 8. /1024 AS MB FROM sysindexes AS i WHERE OBJECTPROPERTY( i.id, 'IsMSShipped' ) = 0 AND 1 NOT IN (INDEXPROPERTY(i.id , i.name , 'IsStatistics') ,INDEXPROPERTY(i.id , i.name , 'IsAutoStatistics') ,INDEXPROPERTY(i.id , i.name , 'IsHypothetical')) AND i.indid BETWEEN 1 And 250 -- AND dPages > 100 --작은 크기 테이블 무시 AND (STATS_DATE( i.id , i.indid ) < getdate() - 15 --15일 이전까지도 업데이트 안된 것 OR STATS_DATE( i.id , i.indid ) IS NULL) ORDER BY Owner, [Table], [Index]
'WEB TIP > MS-SQL' 카테고리의 다른 글
MS-SQL 암호변경 프로시저 (0) | 2008.04.10 |
---|---|
WITH(???LOCK) 옵션 (0) | 2008.01.10 |
Transact SQL 최적화 팁 (0) | 2007.11.21 |
인덱스 (0) | 2007.10.30 |
연령별 집계 (0) | 2007.04.30 |