title: Index usage, monitoring and dropping unused indexes - SQL Server 2008 R2
body: <p>I have a procedure that gathers index usage across a range of instances and databases, mainly using sys.dm_db_index_usage_stats. I am then going through indexes where the USER_UPDATES value is high and the USER_SEEKS, USER_SCANS, USER_LOOKUPS values are 0, indicating the index is not being used, and dropping them.</p>
  
  <p>The problem I have is that the next time the procedure runs it does not reflect that the indexes have been dropped, as sys.dm_db_index_usage_stats only resets when the SQL Server service is restarted or the index is rebuilt. </p>
  
  <p>I'd rather not have to rebuild the index before dropping it. Does anyone have a better suggestion?</p>