Используя Sql Server 2005 Profiler, какие события, столбцы и фильтры вы отслеживаете, чтобы найти самые медленные запросы и хранимые процедуры?
Slow = больше, чем N секунд, 10 для аргумента.
Используя Sql Server 2005 Profiler, какие события, столбцы и фильтры вы отслеживаете, чтобы найти самые медленные запросы и хранимые процедуры?
Slow = больше, чем N секунд, 10 для аргумента.
В SQL 2005 вы можете использовать представления управления, чтобы найти медленные поисковые запросы. Хороший script, который я нашел некоторое время назад в производительность SQL-сервера, поможет вам начать работу; он перечисляет данные с самым медленным выполнением в первую очередь.
SELECT creation_time
,last_execution_time
,total_physical_reads
,total_logical_reads
,total_logical_writes
, execution_count
, total_worker_time
, total_elapsed_time
, total_elapsed_time / execution_count avg_elapsed_time
,SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
((CASE statement_end_offset
WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset END
- qs.statement_start_offset)/2) + 1) AS statement_text
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st
ORDER BY total_elapsed_time / execution_count DESC;
Прежде чем использовать профилировщик, я проверяю встроенные отчеты об использовании. Щелкните правой кнопкой мыши базу данных, отчеты, стандартные отчеты, затем статистику выполнения объекта.
В нем перечислены текущие кэшированные планы выполнения, а также количество ресурсов и количество раз, когда они были запущены. Это, как правило, дает очень хорошее представление о том, что делает сервер занятым.
Столбец длительности делает это для меня, но иногда я также просматриваю столбцы чтения и записи.
Я использую фильтр TSQL: StmtCompleted для получения необработанных запросов. Возможно, вы захотите добавить к ним других, таких как хранимые процедуры, но tsql - это "база", которую вам нужно просмотреть. Поскольку статья MSDN говорит
"Выполнение хранимой процедуры может контролироваться SP: запуск, SP: StmtStarting, SP: StmtCompleted, и SP: Завершенные классы событий и все TSQL".