Analyse le paramètre de mise à jour automatique des statistiques asynchrone de la base de données. Remarque : cette analyse est désactivée par défaut. Utilisez des remplacements afin de l’activer, le cas échéant.
Cette analyse vérifie le paramètre Mise à jour automatique des statistiques de manière asynchrone de cette base de données. Étant donné que cette analyse fait partie de spécifications de normes globales, une alerte est générée si le paramètre ne répond pas à la norme spécifiée.
Lorsque le paramètre Mise à jour automatique des statistiques de manière asynchrone a la valeur ON, les mises à jour des statistiques pour l'option AUTO_UPDATE_STATISTICS sont asynchrones. L'optimiseur de requête n'attend pas la fin des mises à jour des statistiques pour compiler les requêtes. Affecter la valeur ON à cette option n'a aucun effet à moins que AUTO_UPDATE_STATISTICS n'ait également la valeur ON.
AUTO_UPDATE_STATISTICS_ASYNC {ON | OFF}
Une alerte d'avertissement sera déclenchée si l'option ne correspond pas au paramètre requis. Cette analyse immédiatement utilisable permet d'envoyer une alerte lorsque ce paramètre a la valeur ON.
La raison de l'affectation de la valeur OFF par défaut à cette option de base de données est la compatibilité descendante avec les applications existantes. Étant donné que les requêtes n'attendent ni ne bloquent de mises à jour de statistiques, les performances peuvent être temporairement modifiées si une requête est compilée et exécutée avec d'anciennes statistiques. Une fois la mise à jour des statistiques terminée, la même requête est recompilée avec les statistiques mises à jour avant l'exécution suivante. Toutefois, pendant la mise à jour des statistiques, la requête peut subir des problèmes de performances temporaires, car elle a été compilée avec d'anciennes statistiques.
La mise à jour ASYNC est probablement la meilleure option pour la plupart des applications, car elle minimise l'attente et le blocage globaux. Envisagez de lui affecter la valeur ON et, si cela fonctionne pour votre application, désactivez cette analyse d'unités.
Ce problème peut être résolu en :
modifiant le paramètre de configuration de cette base de données pour qu'il corresponde à la valeur attendue ;
remplaçant la valeur attendue pour cette analyse d'unité de cette base de données spécifique ou de toutes les bases de données.
Sinon, si cette analyse n'est pas un critère important pour cette base de données, en :
désactivant l'analyse au moyen de remplacements pour cette base de données spécifique ou toutes les bases de données ;
désactivant l'analyse de configuration de l'agrégat de niveau supérieur au moyen de remplacements pour cette base de données spécifique ou toutes les bases de données.
Consultez des informations plus détaillées sur ce paramètre : Options SET de ALTER DATABASE (Transact-SQL)
Voir aussi « Utilisation des statistiques pour améliorer les performances des requêtes »
Nom | Description | Valeur par défaut |
Activé |
| Non |
Désactiver l'option de vérification de la présence de SQL Express | La valeur ne peut être que « True » ou « False ». Si elle est « True », le workflow ne prendra pas en compte l'édition SQL Server Express. | 0 |
Valeur attendue | Valeur attendue du paramètre de configuration de la base de données. Afin de consulter l'ensemble des valeurs applicables, référez-vous à la section « Configuration » de l'article de la base de connaissances de cette analyse. | OFF |
Génère des alertes |
| Oui |
Intervalle (en secondes) | L'intervalle de temps récurrent en secondes pendant lequel le workflow est exécuté. | 43200 |
Délai d'expiration (en secondes) | Spécifie la durée pendant laquelle le workflow est autorisé à être exécuté avant d'être fermé et marqué comme un échec. | 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>