SQL Server'da Eski (Stale) İstatistikleri Bulma
Son güncellemeden sonra çok sayıda değişen tabloların istatistiklerini listeler. Kötü execution plan'ların yaygın nedenini ortaya çıkarır.
SELECT TOP 30 OBJECT_SCHEMA_NAME(s.object_id) AS schema_name,
OBJECT_NAME(s.object_id) AS table_name, s.name AS stats_name,
sp.last_updated, sp.rows, sp.modification_counter,
CAST(100.0 * sp.modification_counter / NULLIF(sp.rows, 0) AS DECIMAL(10,1)) AS pct_modified
FROM sys.stats s
CROSS APPLY sys.dm_db_stats_properties(s.object_id, s.stats_id) sp
WHERE OBJECTPROPERTY(s.object_id, 'IsUserTable') = 1
AND sp.modification_counter > 1000
ORDER BY sp.modification_counter DESC;Üretim ortamında çalıştırmadan önce test ortamında doğrulayın. Salt okunur teşhis sorgusudur; sistem kilitlerine yol açmaz.
- Bu script salt okunur (read-only) teşhis için tasarlanmıştır; doğrudan veri veya şema değişikliği yapmaz.
- Ağır yük altındaki üretim sunucularında çalıştırmadan önce hedef veritabanı sürümünü (Min. Sürüm: 2012 SP1) doğrulayın.
- İlişkili oturumu sonlandırma veya indeks silme gibi yazma etkili aksiyonlar için notlar bölümündeki komutları temkinli uygulayın.
Diğer SQLSERVER Teşhis Scriptleri
Tümünü Gör (100)SQL Server'da Çalışan İstekler ve Bloklama Zinciri
Aktif istekleri, bekleme tiplerini, bloklayan oturumları ve çalışan ifadeyi birlikte gösterir. Yavaşlama anında ilk çalıştırılacak teşhis sorgusudur.
SQL Server En Çok CPU Tüketen Sorgular
Plan cache'ten toplam ve ortalama CPU süresine göre ilk 20 sorguyu çıkarır. CPU baskısının kaynağını sorgu düzeyinde ortaya koyar.
SQL Server Eksik İndeks Önerileri (Missing Index DMV)
Optimizer'ın önerdiği eksik indeksleri tahmini kazanç skoruna göre sıralar. Öneriler mevcut indekslerle birleştirilerek değerlendirilmelidir.
SQL Server İndeks Fragmentasyonu ve Rebuild/Reorganize Önerisi
Büyük indekslerde fragmentasyon yüzdesini ölçer ve rebuild ya da reorganize önerir. Bakım penceresini gereksiz işlerle doldurmadan planlamanızı sağlar.