Freigeben über


SQL Server-Agent stürzt beim Startversuch ab

In diesem Artikel werden die Probleme des SQL Server-Agentdiensts erläutert, wenn Sie mehrere Aufträge in Ihrer SQL Server-Instanz erstellen.

Ursprüngliche Produktversion: SQL Server
Ursprüngliche KB-Nummer: 2795690

Problembeschreibung

Ein SQL Server-Agent stürzt ab, wenn Sie versuchen, ihn zu starten oder länger als erwartet zu starten. Darüber hinaus können Sie eines oder mehrere der folgenden Szenarien erleben:

  • Szenario 1: Die folgende Fehlermeldung wird im Systemereignisprotokoll protokolliert:

    Der Dienst reagierte nicht rechtzeitig auf die Start- oder Steuerungsanforderung.

  • Szenario 2: Der Status des Agents wird im Systemsteuerung als "Start" angezeigt, und die folgende Fehlermeldung wird in der datei SQLAgent.log protokolliert:

    Eine LEERLAUF-CPU-Bedingung wurde nicht definiert – OnIdle-Auftragspläne haben keine Auswirkungen.

    Darüber hinaus werden die folgenden Einträge möglicherweise in der datei SQLAgent.log protokolliert:

    <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\
    
  • Szenario 3: Der Datenbankserver zeigt eine SQL Server-Prozess-ID (SPID) aus dem Dienst "SQLAgent - Generic Refresher" an. Darüber hinaus wird der folgende Auftrag als ausgeführt im Eingabepuffer der SPID angezeigt:

EXECUTE msdb.dbo.sp_sqlagent_refresh_job

Notiz

Die SPID befindet sich im RUNNABLE-Zustand und wartet regelmäßig auf den PREEMPTIVE_OS_LOOKUPACCOUNTSID Wartetyp, oder die SPID befindet sich in einem Wartezustand für den ASYNC_NETWORK_IO Wartetyp.

Ursache

Dieses Problem tritt auf, da in SQL Server mehrere Auftragseinträge vorhanden sind.

Notiz

Das Problem kann auch auftreten, wenn Sie unbeabsichtigt mehrere Abonnements für Ihre Berichte im Reporting Services Configuration Manager einrichten.

Problemumgehung

Um dieses Problem zu umgehen, löschen Sie die Aufträge, die Sie nicht benötigen.

Notiz

Wenn viele Auftragseinträge vorhanden sind, weil Sie versehentlich viele Abonnements eingerichtet haben, löschen Sie die unnötigen Abonnements mithilfe von Reporting Services Configuration Manager.

Weitere Informationen