Câu trả lời:
Bạn có thể nhận được điều này (và hơn thế nữa) từ Chế độ xem quản lý động (DMV). Để có được số liệu thống kê cho một thủ tục được lưu trữ cụ thể, hãy thử truy vấn sau đây.
SELECT
OBJECT_NAME(qt.objectid)
, qs.execution_count AS [Execution Count]
, qs.execution_count / DATEDIFF(Second, qs.creation_time, GETDATE()) AS [Calls/Second]
, qs.total_worker_time / qs.execution_count AS [AvgWorkerTime]
, qs.total_worker_time AS [TotalWorkerTime]
, qs.total_elapsed_time / qs.execution_count AS [AvgElapsedTime]
, qs.max_logical_reads
, qs.max_logical_writes
, qs.total_physical_reads
, DATEDIFF(Minute, qs.creation_time, GETDATE()) AS [Age in Cache]
FROM
sys.dm_exec_query_stats AS qs
CROSS APPLY
sys.dm_exec_sql_text(qs.[sql_handle]) AS qt
WHERE
qt.[dbid] = DB_ID()
AND qt.objectid = OBJECT_ID('StoredProcedureName')
OPTION (RECOMPILE);
Để xem các thủ tục được thực hiện thường xuyên nhất:
SELECT
OBJECT_NAME(qt.objectid)
, qs.execution_count AS [Execution Count]
, qs.execution_count / DATEDIFF(Second, qs.creation_time, GETDATE()) AS [Calls/Second]
, qs.total_worker_time / qs.execution_count AS [AvgWorkerTime]
, qs.total_worker_time AS [TotalWorkerTime]
, qs.total_elapsed_time / qs.execution_count AS [AvgElapsedTime]
, qs.max_logical_reads
, qs.max_logical_writes
, qs.total_physical_reads
, DATEDIFF(Minute, qs.creation_time, GETDATE()) AS [Age in Cache]
FROM
sys.dm_exec_query_stats AS qs
CROSS APPLY
sys.dm_exec_sql_text(qs.[sql_handle]) AS qt
WHERE
qt.[dbid] = DB_ID()
ORDER BY
qs.execution_count DESC
OPTION (RECOMPILE);
Các giá trị được báo cáo được tích lũy kể từ lần khởi động lại cuối cùng. Nếu bạn muốn đo trong một khoảng thời gian cố định, hãy sử dụng lệnh bên dưới để đặt lại số liệu thống kê chờ.
DBCC SQLPERF("sys.dm_os_wait_stats",CLEAR);
Nếu bạn muốn đo thời gian cố định trong cả ngày, bạn có thể cung cấp đầu ra truy vấn cho một bảng thông qua công việc đại lý và a) tính giá trị giữa hai lần chạy hoặc b) đưa ra chỉ số chờ đợi là bước cuối cùng trong công việc đại lý .
Ngoài ra, chụp dấu vết hồ sơ và chạy nó qua Clear Trace .