Der Service Broker-Ereignishandler kann von SQL Server Service Broker nicht gestartet werden.
Dieser Fehler wird im Windows-Anwendungsprotokoll mit Ereignis-ID 9696 und Ereignisquelle MSSQLSERVER aufgezeichnet. Ursache hierfür kann mangelnder Arbeitsspeicher beim Serverstart sein. Dies hängt wahrscheinlich mit einem oder mehreren anderen Hardware- oder Softwareproblemen des Computers zusammen.
Analysieren Sie dieses Problem wie alle Probleme, die durch unzureichenden Speicher hervorgerufen werden. Geben Sie Speicher frei, indem Sie weniger kritische Anwendungen beenden oder virtuellen oder physischen Speicher hinzufügen.
Es gibt folgende Möglichkeiten, um Speicher freizugeben:
Erhöhen Sie die Größe der Auslagerungsdatei.
Starten Sie den Server mit der Option -g memory_to_reserve neu, um den Arbeitsspeicher zu erhöhen, der von SQL Server für Speicherzuweisungen innerhalb des SQL Server-Prozesses verfügbar hält.
Fügen Sie physischen Arbeitsspeicher hinzu. Bei einem 32-Bit-System können Sie mehr als 4 GB physischen Speicher hinzufügen, wenn Sie Windows Address Windowing Extensions (AWE) verwenden.
Name | Beschreibung | Standardwert |
Aktiviert | Aktiviert oder deaktiviert den Workflow. | Ja |
Priorität | Definiert die Warnungspriorität. | 1 |
Schweregrad | Definiert den Warnungsschweregrad. | 2 |
Target | Microsoft.SQLServer.2012.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Event_ID | 9696 | ||
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='{B11070C2-F427-4E67-9F94-0065E22E2B22}';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.SQL_Server_cannot_start_the_Service_Broker_event_handler_5_Rule" Target="SQL2012Core!Microsoft.SQLServer.2012.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2012ID='{B11070C2-F427-4E67-9F94-0065E22E2B22}';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>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>9696</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</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.SQL_Server_cannot_start_the_Service_Broker_event_handler_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>