Überwacht die Einstellung "Statistiken asynchron aktualisieren" für die Datenbank. Hinweis: Diese Regel ist standardmäßig deaktiviert. Verwenden Sie, falls erforderlich, Überschreibungen, um diese zu aktivieren.
Dieser Monitor überprüft die Einstellung "Statistiken automatisch asynchron aktualisieren" für diese Datenbank. Da dieser Monitor zu einer Gesamtstandardanforderung gehört, wird eine Warnung generiert, wenn die Einstellung nicht dem angegebenen Standard entspricht.
Wenn die Einstellung "Statistiken automatisch asynchron aktualisieren" auf ON festgelegt wurde, sind Statistikaktualisierungen für die AUTO_UPDATE_STATISTICS-Option asynchron. Der Abfrageoptimierer wartet nicht, bis Statistikupdates abgeschlossen sind, bevor Abfragen kompiliert werden. Das Festlegen dieser Option auf ON hat nur dann Auswirkungen, wenn AUTO_UPDATE_STATISTICS auf ON festgelegt ist.
AUTO_UPDATE_STATISTICS_ASYNC {ON | OFF}
Es wird eine Warnung ausgelöst, wenn die Option nicht der erforderlichen Einstellung entspricht. Der Monitor ist standardmäßig so konfiguriert, dass eine Warnung ausgegeben wird, wenn diese Einstellung auf ON festgelegt wurde.
Diese Datenbankoption ist standardmäßig auf OFF festgelegt, um die Abwärtskompatibilität mit vorhandenen Anwendungen zu gewährleisten. Da Abfragen nicht auf Statistikaktualisierungen warten oder für diese blockiert werden, besteht die Möglichkeit temporärer Leistungsschwankungen, wenn eine Abfrage mit alten Statistiken kompiliert und ausgeführt wird. Nach der Aktualisierung der Statistiken wird die Abfrage vor der nächsten Ausführung unter Verwendung der aktualisierten Statistiken erneut kompiliert. Aber während die Statistiken aktualisiert werden, können bei der Abfrage vorübergehend Leistungsprobleme auftreten, da sie unter Verwendung der alten Statistiken kompiliert wurde.
Die asynchrone (ASYNC) Aktualisierung ist wahrscheinlich die beste Wahl für die meisten Anwendungen, da hierbei insgesamt das Blockieren und Warten minimiert wird. Sie sollten erwägen, die Option auf ON festzulegen. Wenn dies für die Anwendung funktioniert, sollten Sie diesen Einheitenmonitor deaktivieren.
Dieses Problem können Sie möglicherweise durch eine der folgenden Aktionen beheben:
Ändern der Konfigurationseinstellung für diese Datenbank, damit sie dem erwarteten Wert entspricht.
Außerkraftsetzen des erwarteten Werts für diesen Einheitenmonitor für diese Datenbank oder für alle Datenbanken.
Wenn dieser Monitor für diese Datenbank nicht relevant ist, haben Sie zudem folgende Möglichkeiten:
Deaktivieren des Monitors mithilfe von Außerkraftsetzungen für diese Datenbank oder für alle Datenbanken.
Deaktivieren des Monitors für die aggregierte Konfiguration auf oberster Ebene mithilfe von Außerkraftsetzungen für diese Datenbank oder für alle Datenbanken.
Ausführlichere Informationen zu dieser Einstellung finden Sie unter: ALTER DATABASE SET-Optionen (Transact-SQL)
Siehe auch " Verwenden von Statistiken zum Verbessern der Abfrageleistung"
Name | Beschreibung | Standardwert |
Warnungspriorität | Definiert die Warnungspriorität. | Normal |
Warnungsschweregrad | Definiert den Warnungsschweregrad. | Warnung |
Überprüfung für SQL Express deaktivieren | Dieser Wert kann nur auf "true" oder "false" festgelegt werden. Der Workflow berücksichtigt die SQL Server Express-Edition nicht, wenn der Wert auf "true" festgelegt ist. | Nein |
Aktiviert | Aktiviert oder deaktiviert den Workflow. | Nein |
Erwarteter Wert | Der erwartete Wert der Einstellung für die Datenbankkonfiguration. Informationen zum Anzeigen der geeigneten Werte finden Sie im Abschnitt "Konfiguration" des Knowledge Base-Artikels zu diesem Monitor. | AUS |
Generiert Warnungen | Definiert, ob der Workflow eine Warnung generiert. | Ja |
Intervall (Sekunden) | Das periodische Intervall in Sekunden, in dem der Workflow ausgeführt werden soll. | 43200 |
Timeout (Sekunden) | Gibt die Zeit an, die der Workflow ausgeführt werden darf, bevor er geschlossen und als fehlgeschlagen markiert wird. | 300 |
Target | Microsoft.SQLServer.2014.Database | ||
Parent Monitor | Microsoft.SQLServer.2014.Database.AutomaticConfiguration | ||
Category | ConfigurationHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2014.DBConfigurationStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2014.Database.Configuration.AutoUpdateStatAsync" Accessibility="Public" Enabled="false" Target="SQL2014Core!Microsoft.SQLServer.2014.Database" ParentMonitorID="Microsoft.SQLServer.2014.Database.AutomaticConfiguration" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.DBConfigurationStatus" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Database.Configuration.AutoUpdateStatAsync.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ConfigurationValueOK" MonitorTypeStateID="ConfigurationValueOK" HealthState="Success"/>
<OperationalState ID="ConfigurationValueNotOK" MonitorTypeStateID="ConfigurationValueNotOK" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ConnectionString>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ConnectionString$</ConnectionString>
<DatabaseName>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</DatabaseName>
<IntervalSeconds>43200</IntervalSeconds>
<SyncTime/>
<ConfigValue>AutoUpdateAsyncStat</ConfigValue>
<ExpectedValue>OFF</ExpectedValue>
<ExcludeOnExpress>false</ExcludeOnExpress>
<SQLSKU>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/Edition$</SQLSKU>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>