Analyse le paramètre de fermeture automatique de la base de données
Cette analyse vérifie le paramètre Fermeture automatique 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.
L'option AUTO_CLOSE est utile pour les bases de données bureautiques, puisqu'elle permet aux fichiers de base de données d'être gérés comme des fichiers normaux. Ceux-ci peuvent être déplacés, copiés en vue d'une sauvegarde ou même transmis par messagerie électronique à d'autres utilisateurs. Toutefois, lorsque la base de données a la valeur AUTOCLOSE = ON, une opération qui initialise un arrêt de la base de données automatique efface le cache du plan pour l'instance de SQL Server. Cette opération entraîne la recompilation de tous les plans d'exécution ultérieurs et peut entraîner une baisse temporaire et brutale des performances des requêtes
La mise en miroir de bases de données exige AUTO_CLOSE OFF.
La fermeture automatique n'est pertinente que lorsque vous êtes certain que le modèle d'utilisation de l'application maintiendra la base de données fermée pendant des périodes relativement longues. Quelques applications en mode mono-utilisateur et quelques situations d'hébergement de bases de données avec une architecture mutualisée peuvent bénéficier de l'option AUTO_CLOSE ON. Pour toutes les autres utilisations, ce choix n'est généralement pas judicieux sauf si vous maîtrisez réellement les modèles d'utilisation et le comportement des applications
|
Lorsque le paramètre Fermeture automatique a la valeur ON, la base de données est arrêtée proprement et ses ressources sont libérées dès que le dernier utilisateur la quitte.
AUTO_CLOSE {ON | OFF}
Une alerte d'avertissement sera déclenchée si l'option Fermeture automatique 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.
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.
Target | Microsoft.SQLServer.2005.Database | ||
Parent Monitor | Microsoft.SQLServer.2005.Database.AutomaticConfiguration | ||
Category | ConfigurationHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2005.DBConfigurationStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2005.Database.Configuration.AutoClose" Accessibility="Public" Enabled="false" Target="SQL2005Core!Microsoft.SQLServer.2005.Database" ParentMonitorID="Microsoft.SQLServer.2005.Database.AutomaticConfiguration" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2005.DBConfigurationStatus" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2005.Database.Configuration.AutoClose.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.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="SQL!Microsoft.SQLServer.DBEngine"]/ConnectionString$</ConnectionString>
<DatabaseName>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</DatabaseName>
<IntervalSeconds>43200</IntervalSeconds>
<SyncTime/>
<ConfigValue>AutoClose</ConfigValue>
<ExpectedValue>OFF</ExpectedValue>
<ExcludeOnExpress>true</ExcludeOnExpress>
<SQLSKU>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/Edition$</SQLSKU>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>