Surveille le paramètre Réduction automatique pour la base de données. Remarque : Ce moniteur est désactivé par défaut. Utilisez des remplacements pour l'activer en cas de besoin.
Ce moniteur vérifie le paramètre Réduction automatique de cette base de données. Comme ce moniteur entre dans le cadre d'une exigence de standards globale, une alerte est générée si le paramètre ne répond pas au standard spécifié.
Quand le paramètre Réduction automatique est activé, les fichiers de base de données peuvent être réduits périodiquement. Le fichier de données et les fichiers journaux peuvent être automatiquement réduits. La réduction automatique réduit la taille du journal des transactions uniquement si la base de données est définie sur le mode de récupération SIMPLE ou si le journal est sauvegardé. Quand le paramètre est désactivé, les fichiers de base de données ne sont pas réduits automatiquement pendant les vérifications périodiques de l'espace inutilisé. L'option AUTO_SHRINK réduit les fichiers dès que plus de 25 % du fichier est inutilisé. Le fichier est réduit à une taille incluant 25 % d'espace inutilisé ou à sa taille au moment de sa création, selon la valeur la plus élevée. Vous ne pouvez pas réduire une base de données en lecture seule.
La réduction automatique peut entraîner une fragmentation excessive des index, une taille du journal des transactions trop volumineuse et des E/S trop nombreuses. Utilisez la réduction automatique uniquement si la base de données est peu susceptible de continuer à croître et que vous pouvez exécuter une instruction ALTER INDEX ... REORGANIZE après l'opération de réduction.
AUTO_SHRINK {ON | OFF}
Une alerte d'avertissement est déclenchée si l'option ne correspond pas au paramètre requis. Tel qu'il livré, le moniteur est configuré pour émettre une alerte quand ce paramètre est défini sur « ON ».
Ce problème peut être résolu en :
Changement du paramètre de configuration de cette base de données pour correspondre à la valeur attendue.
Remplacement de la valeur attendue de ce moniteur d'unités pour cette base de données spécifique ou toutes les bases de données.
Sinon, si ce moniteur ne concerne pas cette base de données :
Désactivation du moniteur à l'aide de remplacements pour cette base de données spécifique ou toutes les bases de données.
Désactivation du moniteur de configuration d'agrégat de niveau supérieur à l'aide de remplacements pour cette base de données spécifique ou toutes les bases de données.
Consultez les informations détaillées de ce paramètre : Options ALTER DATABASE SET (Transact-SQL)
Nom | Description | Valeur par défaut |
Priorité d'alerte | Définit la priorité de l'alerte. | Normale |
Gravité d'alerte | Définit la gravité de l'alerte. | Avertissement |
Activé | Active ou désactive le flux de travail. | Non |
Valeur attendue | Valeur attendue du paramètre de configuration de la base de données. Pour voir l’ensemble des valeurs applicables, consultez la section « Configuration » de l’article de la Base de connaissances de ce moniteur. | DÉSACTIVÉ |
Génère des alertes | Définit si le flux de travail génère une alerte. | Oui |
Intervalle (en secondes) | Intervalle régulier (en secondes) auquel exécuter le flux de travail. | 43200 |
Heure de synchronisation | Heure de la synchronisation spécifiée selon un format de 24 heures. Peut être omise. |
|
Délai d'expiration (secondes) | Spécifie la durée pendant laquelle le flux de travail est autorisé à s'exécuter avant d'être fermé et marqué comme ayant échoué. | 300 |
Délai d’attente pour la connexion de base de données (secondes) | Le workflow échoue et enregistre un événement s’il ne peut pas accéder à la base de données pendant la période spécifiée. | 15 |
Target | Microsoft.SQLServer.Linux.Database | ||
Parent Monitor | Microsoft.SQLServer.Linux.Rollup.Database.AutomaticConfiguration | ||
Category | ConfigurationHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.Linux.MonitorType.Database.DBConfigurationStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.Linux.Monitor.Database.AutoShrinkConfiguration" Accessibility="Public" Enabled="false" Target="SqlDiscL!Microsoft.SQLServer.Linux.Database" ParentMonitorID="Microsoft.SQLServer.Linux.Rollup.Database.AutomaticConfiguration" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Linux.MonitorType.Database.DBConfigurationStatus" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Linux.Monitor.Database.AutoShrinkConfiguration.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ConfigurationValueOK" MonitorTypeStateID="ConfigurationValueOK" HealthState="Success"/>
<OperationalState ID="ConfigurationValueNotOK" MonitorTypeStateID="ConfigurationValueNotOK" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<MachineName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<DatabaseName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</DatabaseName>
<ConfigName>AutoShrink</ConfigName>
<ExpectedValue>OFF</ExpectedValue>
<ConnectionString>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<SqlExecTimeoutSeconds>60</SqlExecTimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>43200</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>