Questo monitoraggio controlla lo stato del servizio del motore di database di SQL Server.
Questo monitoraggio controlla lo stato del servizio Windows del motore di database di SQL Server.
Lo stato "Non in esecuzione" di questo monitoraggio indica che il servizio Motore di database SQL è configurato per l'avvio automatico ma per rimanere in stato "Arrestato" durante il periodo di tempo specifico. Questo periodo di tempo viene definito nella proprietà di monitoraggio "Tempo di indisponibilità" ed è possibile eseguirne l'override. Per impostazione predefinita, questo valore è di 900 secondi (15 minuti). Se lo stato del motore di database SQL torna al valore "In esecuzione" più rapidamente rispetto a tale tempo, significa che il motore di database è stato reimpostato.
Se il monitoraggio risulta troppo disturbato in ambienti specifici, aumentare il valore della proprietà "Tempo di indisponibilità". In caso contrario, se risulta troppo latente, diminuire il valore della proprietà.
In generale, il servizio di Windows può essere arrestato per diversi motivi, ad esempio:
Il servizio è stato arrestato da un amministratore.
È stato impedito l'avvio del servizio perché non è stato possibile autenticare l'account utente.
Il servizio ha rilevato un'eccezione che ne ha causato l'interruzione.
Il servizio non era configurato correttamente e questo ne ha impedito l'avvio.
È possibile tentare di riavviare il servizio utilizzando il collegamento seguente:
Avvio del servizio Motore di database SQL
È possibile visualizzare altri avvisi per questa istanza di SQL Server™ che possono essere correlati a tale problema utilizzando il collegamento seguente:
Visualizzazione avvisi di SQL Server
Nome | Descrizione | Valore predefinito |
Priorità avviso | Definisce la priorità dell'avviso. | Normale |
Gravità avviso | Definisce la gravità dell'avviso. | Errore |
Avviso solo se il tipo di avvio del servizio è Automatico | Questo valore può essere impostato solo su 'true' o 'false'. Se impostato su 'false', gli avvisi verranno attivati indipendentemente dal tipo di avvio impostato. Il valore predefinito è 'true'. | Sì |
Abilitato | Abilita o disabilita il flusso di lavoro. | Sì |
Genera avvisi | Definisce se il flusso di lavoro genera un avviso. | Sì |
Intervallo (secondi) | Intervallo di tempo ricorrente in secondi in cui eseguire il flusso di lavoro. | 60 |
Tempo di indisponibilità (secondi) | Durata di indisponibilità del servizio minima prima che venga considerato non integro. | 900 |
Target | Microsoft.SQLServer.2012.DBEngine | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2012.CheckWinServiceStateMonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2012.DBEngine.ServiceMonitor" Accessibility="Public" Enabled="true" Target="SQL2012Core!Microsoft.SQLServer.2012.DBEngine" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2012.CheckWinServiceStateMonitorType" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2012.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>