SQL Server kullanan bir uygulama için bir performans testi / taban çizgisi çalıştırmadan önce, örneği yeniden başlatmadan örneği "temiz" duruma ayarlamak istiyorum. Takip etmeye çalıştığım adımlar var, ancak doğru sırada olan ve gereksiz adımlar olmayan kesin bir liste oluşturmak istiyorum.
Bu adımların listesi SQL Server'ı "temiz" duruma ayarlamayı başarıyor mu?
Dizi mantıklı / doğru mu?
Gereksiz adımlar var mı?
CHECKPOINT -- Write all dirty pages
DBCC DROPCLEANBUFFERS -- All should be clean after checkpoint?
DBCC FREEPROCCACHE -- Clear the plan cache
DBCC FREESYSTEMCACHE -- Is this necessary after FREEPROCCACHE?
DBCC FREESESSIONCACHE -- May not be necessary if distributed queries aren't used, but want to catch all scenarios
EXEC SP_UPDATESTATS -- Refresh stats
'BEGIN TESTING!'
DROPCLEANBUFFERS
test için güzel ama her zaman doğru değil. Yüksek hacimli bir tabloya başvuruyorsanız, neredeyse her zaman bellekte sayfalarınız olacaktır ve ES zamanı bu sorguda büyük bir faktör olmayacaktır. Bu durumda gerçekçi olmayandan daha fazla kilo almış olabilirsiniz.