Windows 上的 MSSQL: MSSQL Server 服务意外终止

Microsoft.SQLServer.Windows.EventRule.DBEngine.The_MSSQLServer_service_terminated_unexpectedly_3_5_Rule (Rule)

SQL Server 代理服务自动重新启动 SQL Server 时报告该错误。仅当除用户或应用程序显式停止命令之外的某种原因导致 SQL Server 停止,且在 SQL Server 代理高级属性中选中了“SQL Server 意外停止时自动重新启动”选项时,SQL Server 代理将自动重新启动 SQL Server。在 SQL Server 重新启动期间,SQL Server 代理将此消息写入到托管 SQL Server 的计算机上的应用程序事件日志中。

Knowledge Base article:

摘要

SQL Server 代理服务自动重新启动 SQL Server 时报告该错误。仅当除用户或应用程序显式停止命令之外的某种原因导致 SQL Server 停止,且在 SQL Server 代理高级属性中选中了“SQL Server 意外停止时自动重新启动”选项时,SQL Server 代理将自动重新启动 SQL Server。在 SQL Server 重新启动期间,SQL Server 代理将此消息写入到托管 SQL Server 的计算机上的应用程序事件日志中。

SQL Server 意外停止可能有几种不同的原因。这些原因包括:

解决方法

如果不希望 SQL Server 代理自动重启 SQL Server,请关闭该选项。联机丛书中的“SQL Server 代理属性(“高级”选项卡)”描述了此操作的过程。

如果该问题重复发生,则你需要确定 SQL Server 服务意外停止的原因:

可替代参数

名称

说明

默认值

已启用

启用或禁用工作流。

间隔(秒)

运行工作流的重复间隔时间(秒)。

300

优先级

定义警报优先级。

1

严重性

定义警报严重性。

2

同步时间

同步时间

 

超时(秒)

指定工作流在关闭之前允许运行的时间,并标记为失败。

200

数据库连接超时(秒)

如果在指定期间无法访问数据库,工作流将失败并注册一个事件。

15

Element properties:

TargetMicrosoft.SQLServer.Windows.DBEngine
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
Windows 上的 MSSQL: MSSQL Server 服务意外终止
{0}
CommentMom2017ID='{D9D2C13A-3AAA-410C-B594-EC4ED1A7FC75}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.SQLServer.Windows.DataSource.EventCollectionFiltered Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<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>
<NetbiosComputerName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<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>