Tabloya En Son Ne Zaman Erişim Yapıldığını Sorgulama

SQL Server performans çalışmalarında sorulan soruların nerede ise başında “hangi tabloya ne zaman erişim sağlandı?” sorusudur. Aşağıdaki sql sorgusu tabloya ne zaman erişim sağlandığını gösterir.

SELECT DB_NAME(ius.[database_id]) AS [Database],
OBJECT_NAME(ius.[object_id]) AS [TableName],
MAX(ius.[last_user_lookup]) AS [last_user_lookup],
MAX(ius.[last_user_scan]) AS [last_user_scan],
MAX(ius.[last_user_seek]) AS [last_user_seek],
MAX(ius.[last_user_update]) AS [last_user_update]
FROM sys.dm_db_index_usage_stats AS ius
WHERE ius.[database_id] = DB_ID()
--AND ius.[object_id] = OBJECT_ID('YourTableName')
GROUP BY ius.[database_id], ius.[object_id]

Sorgu sonucunda gelen kolonların açıklaması:

  • last_user_lookup: Index olmayan bir kolon üzerinde where şartı ile sorgu çalıştığı zaman
  • last_user_scan: Tabloyu sıralı okuduğu zaman, “select * from Table” sorgusu gibi
  • last_user_seek: Tablodan tek değer okunduğu zaman, “select * from Table where Id = 5” sorgusu gibi
Tabloya En Son Ne Zaman Erişilmiş?
image_pdfimage_print

Yorum yapın

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Translate »
%d blogcu bunu beğendi: