L'erreur est signalée par le service SQL Server Agent quand il redémarre automatiquement SQL Server. SQL Server Agent redémarre automatiquement SQL Server uniquement si celui-ci s'est arrêté pour une raison autre qu'une commande d'arrêt explicite d'un utilisateur ou d'une application, et si l'option « Redémarrage automatique de SQL Server après un arrêt inattendu » est sélectionnée dans les propriétés avancées de SQL Server Agent. Au redémarrage de SQL Server, SQL Server Agent écrit ce message dans le journal des événements de l'application sur l'ordinateur qui héberge SQL Server.
L'erreur est signalée par le service SQL Server Agent quand il redémarre automatiquement SQL Server. SQL Server Agent redémarre automatiquement SQL Server uniquement si celui-ci s'est arrêté pour une raison autre qu'une commande d'arrêt explicite d'un utilisateur ou d'une application, et si l'option « Redémarrage automatique de SQL Server après un arrêt inattendu » est sélectionnée dans les propriétés avancées de SQL Server Agent. Au redémarrage de SQL Server, SQL Server Agent écrit ce message dans le journal des événements de l'application sur l'ordinateur qui héberge SQL Server.
SQL Server peut s'arrêter de façon inattendue pour plusieurs raisons. Causes possibles :
Fuites de mémoire d'un processus dans l'espace mémoire SQL Server, par exemple d'une procédure stockée étendue ou d'OLE Automation.
Fin directe du processus sqlservr.exe, par exemple de l'onglet Processus du Gestionnaire des tâches ou à l'aide d'un programme comme kill.exe du kit de ressources Windows.
Certains types de violations d'accès non traitées.
Si vous ne voulez pas que SQL Server Agent redémarre automatiquement SQL Server, désactivez l'option. Cette procédure est décrite dans la rubrique « Propriétés de SQL Server Agent (onglet Avancées) » de la documentation en ligne.
Si le problème persiste, vous devez déterminer les raisons de l'arrêt inattendu du service SQL Server :
Recherchez dans le journal des erreurs SQL Server et dans les journaux de l'Observateur d'événements les erreurs associées pouvant expliquer l'arrêt inattendu du service.
Utilisez l'Analyseur de performances pour surveiller l'état du système et identifier les problèmes survenus lors de l'arrêt du service.
Nom | Description | Valeur par défaut |
Activé | Active ou désactive le flux de travail. | Oui |
Intervalle (en secondes) | Intervalle régulier (en secondes) auquel exécuter le flux de travail. | 300 |
Priorité | Définit la priorité de l'alerte. | 1 |
Gravité | Définit la gravité de l'alerte. | 2 |
Heure de synchronisation | Heure de synchronisation |
|
Délai d'expiration (secondes) | Spécifie la durée pendant laquelle le flux de travail est autorisé à s’exécuter avant d’être fermé et marqué comme ayant échoué. | 200 |
Délai d’attente pour la connexion de base de données (secondes) | Le workflow échoue et enregistre un événement s’il ne peut pas accéder à la base de données pendant la période spécifiée. | 15 |
Target | Microsoft.SQLServer.Windows.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Comment | Mom2017ID='{D9D2C13A-3AAA-410C-B594-EC4ED1A7FC75}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ | DataSource | Microsoft.SQLServer.Windows.DataSource.EventCollectionFiltered | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.Windows.EventRule.DBEngine.The_MSSQLServer_service_terminated_unexpectedly_3_5_Rule" Target="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{D9D2C13A-3AAA-410C-B594-EC4ED1A7FC75}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Microsoft.SQLServer.Windows.DataSource.EventCollectionFiltered">
<MachineName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<MonitoringType>$Target/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<EventDisplayNumber>14265</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Windows.EventRule.DBEngine.The_MSSQLServer_service_terminated_unexpectedly_3_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>