У меня есть задание агента SQL, которое отображается в мониторе активности как незанятое, но продолжительность продолжает увеличиваться.
Кажется, что задание остановлено, поскольку я пытался остановить его вручную, и SQL сообщает, что задание не выполняется.
SysJobActivity не имеет stop_execution_date для задания
Задание состоит из 5 шагов, и последний шаг не завершился - сервер перезагрузился во время выполнения этого шага.
Можно ли оставить работу в текущем состоянии? Продолжительность будет постоянно увеличиваться.
Спасибо
Вы можете опубликовать его скриншот? Похоже, если задание говорит, что оно остановлено, возможно, что-то нужно убить - вы уверены, что БД не в режиме восстановления?
Добавлен скриншот истории. sp_who не показывает это задание как работающее
Ах хорошо. Если в sp_who нет ничего, я бы на 100% доверял этому по сравнению со всем, что я вижу в GUI. Я предполагаю, что это связано с перезагрузкой, а stop отсутствует, и что-то в отчете просто неправильно. Может быть ошибка с MSSQL! Можете ли вы просто перезагрузить всю систему или отказаться от службы, чтобы посмотреть, что произойдет?
Посмотрите, что здесь тоже: USE msdb SELECT * FROM msdb..sysjobhistory Я думаю, что графический интерфейс просто отсылает отсюда.


После комментариев и просмотра скриншотов я думаю, что знаю, что происходит:
msdb..sysjobhistory.sysjobhistory.sp_who, что означает, что НЕТ запущен.Я подозреваю, что это нормально - оставить работу просто «запущенной» навсегда. Но я бы посоветовал прояснить это, чтобы какой-нибудь другой бедный администратор базы данных не чесал в затылке. Вы могли:
msdb..sysjobhistory вручную, что страшно, я бы не стал.Хорошо, отлично - посмотрю, будет ли работа завтра. Я не буду предпринимать никаких действий с самой работой (обновлять syshistory и т. д.) Скрестив пальцы, утром все в порядке! Еще раз спасибо!
Круто, дайте мне знать, как это получается. Теперь мне любопытно :)
Я добавил новый снимок экрана :) Задание, которое выполнялось более 12 часов, исчезло, и оно было заменено на сегодняшнее утреннее! Как ни странно, вчерашние рабочие места были перенесены в работу сегодня утром.
@ Брайан: Хорошо, теперь все имеет смысл. По какой-то причине (внезапная перезагрузка) предыдущий запуск никогда не помещал его stop, или end, или fail, или success в msdb..sysjobhistory, поэтому он просто думает, что это задание имеет 2 запуска и 1 остановку, и все. Вы можете взять SELECT из этой таблицы, чтобы узнать, заинтересовались ли вы. Это говорит мне, что вам не о чем беспокоиться, бесконечная продолжительность не означает, что он все еще работает. Я сильно подозреваю, что завтра отчеты о вакансиях вернутся в нормальное русло. Тайна раскрыта! Если вы нашли мой ответ полезным, примите его :)
Что-то звучит шатко. Рассмотрите возможность выполнения
sp_whoи посмотрите, сможете ли вы найти работающийpid. Тогда вы можетеkillэто. Если продолжительность увеличивается, я бы подумал, что он работает, я бы просто оставил нет в покое. Иногда Microsoft SQL Management Studio (графический интерфейс) не будет .. точный. Сообщите мне, что вы узнаете.