Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье рассматриваются проблемы, возникающие службой агента SQL Server при создании нескольких заданий в экземпляре SQL Server.
Исходная версия продукта: SQL Server
Исходный номер базы знаний: 2795690
Симптомы
Агент SQL Server завершает работу при попытке запустить его или занимает больше времени, чем ожидалось. Кроме того, вы можете столкнуться с одним или несколькими из следующих сценариев:
Сценарий 1. В журнал событий системы регистрируется следующее сообщение об ошибке:
Служба не ответила на запрос на запуск или контроль своевременно.
Сценарий 2. Состояние агента отображается как "Запуск" в панель управления, а следующее сообщение об ошибке регистрируется в файле SQLAgent.log:
Условие простоя ЦП не определено. Расписания заданий OnIdle не будут влиять.
Кроме того, в файл SQLAgent.log могут быть вошли следующие записи:
<Time Stamp> - ? [431] Populating subsystems cache... \ <Time Stamp> - ? [432] There are 7 subsystems in the subsystems cache \ <Time Stamp> - ? [124] Subsystem 'ActiveScripting' successfully loaded (maximum concurrency: 40)\ <Time Stamp> - ? [124] Subsystem 'ANALYSISCOMMAND' successfully loaded (maximum concurrency: 400)\ <Time Stamp> - ? [124] Subsystem 'ANALYSISQUERY' successfully loaded (maximum concurrency: 400)\ <Time Stamp> - ? [124] Subsystem 'CmdExec' successfully loaded (maximum concurrency: 40)\ <Time Stamp> - ? [124] Subsystem 'PowerShell' successfully loaded (maximum concurrency: 2)\ <Time Stamp> - ? [124] Subsystem 'SSIS' successfully loaded (maximum concurrency: 400)\ <Time Stamp> - ? [124] Subsystem 'TSQL' successfully loaded (maximum concurrency: 80)\ <Time Stamp> - ! [364] The Messenger service has not been started - NetSend notifications will not be sent\ <Time Stamp> - ? [129] SQLSERVERAGENT starting under Windows NT service control\ <Time Stamp> - + [396] An idle CPU condition has not been defined - OnIdle job schedules will have no effect\ <Time Stamp> - ? [110] Starting SQLServerAgent Monitor using '' as the notification recipient...\ <Time Stamp> - ? [146] Request servicer engine started\ <Time Stamp> - ? [133] Support engine started\ <Time Stamp> - ? [167] Populating job cache...\ <Time Stamp> - ? [131] SQLSERVERAGENT service stopping due to a stop request from a user, process, or the OS...\ <Time Stamp> - ? [134] Support engine stopped\ <Time Stamp> - ? [197] Alert engine stopped\ <Time Stamp> - ? [168] There are 4731 job(s) [0 disabled] in the job cache\ <Time Stamp> - ? [170] Populating alert cache...\ <Time Stamp> - ? [171] There are 0 alert(s) in the alert cache\ <Time Stamp> - ? [149] Request servicer engine stopped\ <Time Stamp> - ? [248] Saving NextRunDate/Times for all updated job schedules...\ <Time Stamp> - ? [249] 0 job schedule(s) saved\ <Time Stamp> - ? [127] Waiting for subsystems to finish...\ <Time Stamp> - ? [128] Subsystem 'ActiveScripting' stopped (exit code 1)\ <Time Stamp> - ? [128] Subsystem 'ANALYSISCOMMAND' stopped (exit code 1)\ <Time Stamp> - ? [128] Subsystem 'ANALYSISQUERY' stopped (exit code 1)\ <Time Stamp> - ? [128] Subsystem 'CmdExec' stopped (exit code 1)\ <Time Stamp> - ? [128] Subsystem 'PowerShell' stopped (exit code 1)\ <Time Stamp> - ? [128] Subsystem 'SSIS' stopped (exit code 1)\ <Time Stamp> - ? [175] Job scheduler engine stopped\
Сценарий 3. Сервер ядра СУБД отображает идентификатор процесса SQL Server (SPID) из службы "SQLAgent - generic Refresher". Кроме того, следующее задание отображается как запущенное во входном буфере SPID:
EXECUTE msdb.dbo.sp_sqlagent_refresh_job
Примечание.
SPID находится в состоянии RUNNABLE и регулярно ожидает PREEMPTIVE_OS_LOOKUPACCOUNTSID
типа ожидания, или SPID находится в состоянии ожидания для ASYNC_NETWORK_IO
типа ожидания.
Причина
Эта проблема возникает из-за нескольких записей заданий в SQL Server.
Примечание.
Эта проблема также может возникнуть, если вы непреднамеренно настроили несколько подписок для отчетов в Диспетчере конфигурации служб Reporting Services.
Обходное решение
Чтобы обойти эту проблему, удалите задания, которые не требуются.
Примечание.
Если есть много записей заданий, так как вы непреднамеренно настроили множество подписок, удалите ненужные подписки с помощью Диспетчера конфигурации служб Reporting Services.
Дополнительная информация
- Дополнительные сведения об удалении задания см. в разделе "Удаление одного или нескольких заданий".
- Дополнительные сведения об управлении подписками служб Reporting Services см. в статье "Создание подписок и управление подписками для серверов отчетов в собственном режиме".
- Дополнительные сведения о различных типах ожидания см. в разделе "Типы ожидания SQL Server".