Die Konfigurationseinstellung für die Kostenbeschränkung der Abfragekontrolle ist niedriger als die vom SQL Server-Optimierer geschätzten Kosten für die angegebene Abfrage. Die Kostenbeschränkung der Abfragekontrolle ist standardmäßig auf 0 eingestellt; in diesem Fall können alle Abfragen durchgeführt werden. In dieser Instanz von SQL Server wurde jedoch durch eine Einstellung der Option auf eine Zahl über 0 eine Obergrenze festgelegt. Abfragepläne mit prognostizierten Kosten über diesem Wert werden nicht gestartet.
Die Konfigurationseinstellung für die Kostenbeschränkung der Abfragekontrolle ist niedriger als die vom SQL Server-Optimierer geschätzten Kosten für die angegebene Abfrage. Die Kostenbeschränkung der Abfragekontrolle ist standardmäßig auf 0 eingestellt; in diesem Fall können alle Abfragen durchgeführt werden. In dieser Instanz von SQL Server wurde jedoch durch eine Einstellung der Option auf eine Zahl über 0 eine Obergrenze festgelegt. Abfragepläne mit prognostizierten Kosten über diesem Wert werden nicht gestartet.
Weitere Informationen finden Sie in den Themen zur Option "Kostenbeschränkung der Abfragekontrolle", zum Festlegen der Option zur Kostenbeschränkung der Abfragekontrolle in Enterprise Manager und zu den Empfehlungen für die Abfrageoptimierung in der Onlinedokumentation.
Die folgenden Aktionen verhindern, dass die Meldung für diese Abfrage angezeigt wird:
Optimieren Sie die Abfrage, um die geschätzte Ausführungszeit auf einen Wert unterhalb des Grenzwertes zu reduzieren.
Prüfen Sie, ob die Statistiken für Tabellen und Indizes, auf die in der Abfrage verwiesen wird, aktuell sind. Unter Umständen müssen Sie UPDATE STATISTICS oder DBCC DBREINDEX ausführen.
Legen Sie die Einstellung für die Option "Kostenbeschränkung der Abfragekontrolle" auf 0 fest. Mit dieser Einstellung können alle Abfragen ausgeführt werden.
Erhöhen Sie den Wert für die Option "Kostenbeschränkung der Abfragekontrolle" auf einen Wert, der über der Anzahl von Sekunden liegt, die für die Ausführung dieser Abfrage als Schätzung angesetzt wurden.
Name | Beschreibung | Standardwert |
Aktiviert | Aktiviert oder deaktiviert den Workflow. | Ja |
Intervall (Sekunden) | Gibt das Wiederholungsintervall in Sekunden für die Ausführung des Workflows an. | 300 |
Priorität | Definiert die Warnungspriorität. | 1 |
Schweregrad | Definiert den Warnungsschweregrad. | 1 |
Synchronisierungszeit | Synchronisierungszeit |
|
Timeout (Sekunden) | Gibt die Zeit an, zu der der Workflow ausgeführt werden dann, bevor er geschlossen und als fehlerhaft markiert wird. | 200 |
Timeout für Datenbankverbindung (Sekunden) | Es tritt ein Fehler beim Workflow auf, und ein Ereignis wird registriert, wenn der Workflow nicht innerhalb des angegebenen Zeitraums auf die Datenbank zugreifen kann. | 15 |
Target | Microsoft.SQLServer.Windows.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Comment | Mom2017ID='{74138FB8-4CBA-480B-82D1-C5456A38AA4A}';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_query_has_been_canceled_because_the_estimated_cost_of_this_query_exceeds_the_configured_threshold._Contact_the_system_administrator_1_5_Rule" Target="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{74138FB8-4CBA-480B-82D1-C5456A38AA4A}';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>8649</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Windows.EventRule.DBEngine.The_query_has_been_canceled_because_the_estimated_cost_of_this_query_exceeds_the_configured_threshold._Contact_the_system_administrator_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter3>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>