Я пытаюсь понять, как устранить ситуацию с агентом SQL Server (2012). Задание, которое выполнялось каждую ночь (пользовательский агент SQL Server в качестве планировщика) более года за 2–4 секунды, недавно выполнялось более 7 часов?
Я не могу найти ничего в журналах серверов SQL или журналах событий серверов, чтобы объяснить долгую перспективу. Сроки также не связаны с рабочей нагрузкой, поскольку работа, выполняемая заданием, по сути, одинакова каждую ночь (дневные итоги используются для выставления счетов). Работа также выполнена правильно. (хотя это вызвало другие проблемы, но они были связаны с тем, что задание не предназначалось для выполнения в течение нескольких дат, что и было сделано)
На этапе 2 задания выполняется вычисление и запись серии записей с отметками времени. Все ожидаемые записи были записаны примерно за 2 секунды. Это все, что делает шаг, поэтому кажется, что он завершился быстро, но в журнале агента SQL указано, что выполнение этого конкретного шага заняло 7 часов 30 минут. Также в это время был выполнен следующий шаг.
Есть ли способ получить дополнительную информацию о том, что SQL делал в то время? В качестве альтернативы можно ли ограничить общее время выполнения задания? другими словами, сделайте ошибку, чтобы мы, по крайней мере, знали.
Я запустил БД проверки dbcc (ошибок нет).
Версия SQL - 11.03339 ОС - Win 2008R2 Enterprise
Пока проблема возникала только один раз.
Спасибо заранее за любую помощь.
Один из подходов, который вы можете использовать, - это выполнить шаги, указанные в этой ссылке - https://www.mssqltips.com/sqlservertip/1861/sql-server-monitoring-scripts-with-the-dmvs/. Как объясняется в статье, вы можете настроить задание для захвата операторов sql и записи их в таблицу, тогда вы будете точно знать, что и когда выполнялось.