SQL Server Agent 服務自動重新啟動 SQL Server 時報告此錯誤。僅當其他原因導致 SQL Server 停止 (即使用者或應用程式明確發出的停止命令除外),並且已在 SQL Server Agent 的 [進階] 屬性中選定了 [如果 SQL Server 非預期地停止,則自動予以重新啟動] 選項時,SQL Server Agent 才會自動重新啟動 SQL Server。在 SQL Server 重新啟動過程中,SQL Server Agent 會將此訊息寫入到主控 SQL Server 之電腦的應用程式事件記錄檔中。
SQL Server 發生意外停止可能有幾種不同原因,其中包括:
SQL Server 記憶體空間中的處理序記憶體遺漏,如延伸預存程序記憶體遺漏或 OLE automation 記憶體遺漏。
從 [工作管理員] 上的 [處理序] 索引標籤或使用 Windows Resource Kit 中的 kill.exe 程式,直接結束 sqlservr.exe 處理序。
某些類型的未處理存取違規。
如果不想要 SQL Server Agent 自動重新啟動 SQL Server,請關閉該選項。《線上叢書》的<SQL Server Agent 屬性 (進階頁籤)>中已描述此程序。
如果問題重複出現,您需要判定 SQL Server 服務意外停止的原因:
檢查 SQL Server 錯誤記錄檔與事件檢視器記錄檔中可能有助於解釋服務意外停止原因的相關錯誤。
使用效能監視器監視系統狀態,並尋找服務中止時間附近發生的問題。
如需如何產生 SQL 傾印檔案的詳細資訊,請參閱 Microsoft 知識庫文件 827690。此資訊加上 SQLDiag.exe 的輸出,有助於 Microsoft 產品支援服務判定問題的根本原因。
Target | Microsoft.SQLServer.2012.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Event_ID | 14265 | ||
Event Source | $Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$ | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application | ||
Comment | Mom2012ID='{D9D2C13A-3AAA-410C-B594-EC4ED1A7FC75}';MOM2012GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ | DataSource | Microsoft.Windows.EventProvider | Microsoft.SQLServer.SQLDefaultAccount |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.2012.The_MSSQLServer_service_terminated_unexpectedly_3_5_Rule" Target="SQL2012Core!Microsoft.SQLServer.2012.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2012ID='{D9D2C13A-3AAA-410C-B594-EC4ED1A7FC75}';MOM2012GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Windows!Microsoft.Windows.EventProvider" RunAs="SQL!Microsoft.SQLServer.SQLDefaultAccount">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>14265</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2012.The_MSSQLServer_service_terminated_unexpectedly_3_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>