2010-02-11 18 views
24

oparciu o coraz wykonania kwerendy statystyki korzystania z tej niezwykle przydatny kawałek SQL uzyskany z tego postu Most Executed Stored Procedure - Stack Overflow:Jak wyczyścić dół Statystyki wykonania zapytania w SQL Server 2005/2008

SELECT TOP 100 
    qt.TEXT AS 'SP Name', 
    SUBSTRING(qt.text, qs.statement_start_offset/2, CASE WHEN (qs.statement_end_offset = -1) THEN LEN(qt.text) ELSE (qs.statement_end_offset - qs.statement_start_offset)/2 END) AS actual_query, 
    qs.execution_count AS 'Execution Count', 
    qs.total_worker_time/qs.execution_count AS 'AvgWorkerTime', 
    qs.total_worker_time AS 'TotalWorkerTime', 
    qs.total_physical_reads AS 'PhysicalReads', 
    qs.creation_time 'CreationTime', 
    qs.execution_count/DATEDIFF(Second, qs.creation_time, GETDATE()) AS 'Calls/Second' 
FROM sys.dm_exec_query_stats AS qs 
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt 
WHERE qt.dbid = (SELECT dbid 
       FROM sys.sysdatabases 
       WHERE name = 'BSP') 
ORDER BY qs.total_worker_time/qs.execution_count DESC 

jak bym całkowicie jasne z tych egzekucji statystyki i zacząć od zera?

Byłoby to szczególnie użyteczne, ponieważ błędy rozwojowe i testowanie spowodowały, że procedury były nazywane zwykle dużą liczbą razy, tym samym powodując przecięcie rzeczywistych poziomów użytkowania.

Odpowiedz

49
DBCC FREEPROCCACHE 
DBCC DROPCLEANBUFFERS 
+3

Ale uważaj na produkcji .... –

+0

Że pracował w środowisku testowym - czy są jakieś zagrożenia dla robią to w produkcji? –

+1

Tak, chociaż jest wymieniony jako błąd rozwojowy i testowanie, więc dopóki nie testował/dev przeciwko prodowi, powinno być dobrze. Podczas produkcji spowodowałoby to poważne uszkodzenie procesora, ale odzyskanie. – Andrew

Powiązane problemy