SQL Server-Windows-Dienst

Microsoft.SQLServer.2008.DBEngine.ServiceMonitor (UnitMonitor)

Dieser Monitor überprüft den Status des SQL-Datenbankmoduldiensts.

Knowledge Base article:

Zusammenfassung

Dieser Monitor überprüft den Status des Windows-Diensts des SQL-Datenbankmoduls.

Ursachen

Der Status "Wird nicht ausgeführt" dieses Monitors weist darauf hin, dass der SQL-Datenbankmoduldienst für den automatischen Start konfiguriert ist, während des spezifischen Zeitraums jedoch den Status "Beendet" aufweist. Dieser Zeitraum wird in der Monitoreigenschaft "Zeitraum der Nichtverfügbarkeit" definiert und kann außer Kraft gesetzt werden. Dieser Wert beträgt standardmäßig 900 Sek. (15 Min.). Wenn das SQL-Datenbankmodul schneller als durch diesen Zeitraum vorgegeben wieder in den Status "Wird ausgeführt" wechselt, bedeutet dies, dass das Modul gerade zurückgesetzt wurde.

Wenn dieser Monitor in bestimmten Umgebungen zu aktiv ist, erhöhen Sie den Wert für "Zeitraum der Nichtverfügbarkeit". Falls er zu latent ist, verringern Sie den Wert für "Zeitraum der Nichtverfügbarkeit".

Ein Windows-Dienst kann im Allgemeinen durch viele Ursachen beendet werden, beispielsweise durch folgende:

Lösungen

Versuchen Sie, den Dienst über den folgenden Link neu zu starten:

SQL-Datenbankmoduldienst starten

Über den folgenden Link können Sie weitere Warnungen für diese SQL Server™-Instanz anzeigen, die möglicherweise mit diesem Problem zusammenhängen:

SQL Server-Warnungen anzeigen

Überschreibbare Parameter

Name

Beschreibung

Standardwert

Warnungspriorität

Definiert die Warnungspriorität.

Normal

Warnungsschweregrad

Definiert den Warnungsschweregrad.

Fehler

Nur warnen, wenn der Starttyp des Diensts automatisch erfolgt

Diese Einstellung kann nur auf "true" oder "false" festgelegt werden. Ist diese Einstellung auf "false" festgelegt, werden Warnungen unabhängig vom festgelegten Starttyp ausgelöst. Der Standardwert ist "true".

Ja

Aktiviert

Aktiviert oder deaktiviert den Workflow.

Ja

Generiert Warnungen

Definiert, ob der Workflow eine Warnung generiert.

Ja

Intervall (Sekunden)

Das periodische Intervall in Sekunden, in dem der Workflow ausgeführt werden soll.

60

Zeitraum der Nichtverfügbarkeit (Sek.)

Die Mindestdauer der Dienstunterbrechung, nach der der Dienst als fehlerhaft gilt.

900

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2008.CheckWinServiceStateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
SQL Server-Dienst wurde beendet
Der Windows-Dienst für die Datenbankmodulinstanz {1} auf Computer {0} wurde beendet
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2008.DBEngine.ServiceMonitor" Accessibility="Public" Enabled="true" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2008.CheckWinServiceStateMonitorType" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.DBEngine.ServiceMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Running" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="NotRunning" HealthState="Error"/>
</OperationalStates>
<Configuration>
<Frequency>60</Frequency>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<ServiceName>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</ServiceName>
<CheckStartupType>true</CheckStartupType>
<UnavailableTime>900</UnavailableTime>
</Configuration>
</UnitMonitor>