Hiermit wird die Einstellung für "Automatisches Verkleinern" für die Datenbank überwacht. Hinweis: Dieser Monitor ist standardmäßig deaktiviert. Verwenden Sie bei Bedarf Außerkraftsetzungen, um ihn zu aktivieren.
Dieser Monitor überprüft die Einstellung für "Automatisches Verkleinern" 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 "Automatisches Verkleinern" auf ON festgelegt ist, werden die Datenbankdateien möglicherweise regelmäßig verkleinert. Sowohl Daten- als auch Protokolldateien können automatisch verkleinert werden. Die Option "Automatisches Verkleinern" reduziert die Größe des Transaktionsprotokolls nur, wenn für die Datenbank das SIMPLE-Wiederherstellungsmodell festgelegt ist oder wenn das Protokoll gesichert wird. Ist diese Option auf OFF festgelegt, werden die Datenbankdateien während der regelmäßigen Überprüfungen auf nicht verwendeten Speicherplatz nicht automatisch verkleinert. Mit der Option AUTO_SHRINK werden Dateien dann verkleinert, wenn mehr als 25 Prozent der Datei aus nicht verwendetem Speicherplatz bestehen. Die Datei wird auf eine Größe verkleinert, bei der 25 Prozent der Datei aus nicht verwendetem Speicherplatz bestehen, oder auf die Größe, mit der die Datei erstellt wurde, je nachdem, welcher Wert größer ist. Eine schreibgeschützte Datenbank kann nicht verkleinert werden.
Die Einstellung "Automatisches Verkleinern" kann zu einer übermäßigen Indexfragmentierung, einem sehr großen Transaktionsprotokoll und sehr vielen E/A-Vorgängen führen. Verwenden Sie die Einstellung "Automatisches Verkleinern" nur, wenn die Datenbankgröße wahrscheinlich nicht wieder zunimmt und Sie nach dem Verkleinerungsvorgang die Anweisung ALTER INDEX ... REORGANIZE durchführen können.
AUTO_SHRINK {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.
Dieses Problem können Sie möglicherweise durch eine der folgenden Aktionen beheben:
Die Konfigurationseinstellung für diese Datenbank wird geändert, damit sie dem erwarteten Wert entspricht.
Der erwartete Wert für diesen Einheitenmonitor für diese Datenbank oder für alle Datenbanken wird außer Kraft gesetzt.
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)
Name | Beschreibung | Standardwert |
Warnungspriorität | Definiert die Warnungspriorität. | Normal |
Warnungsschweregrad | Definiert den Warnungsschweregrad. | Warnung |
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) | Gibt das Wiederholungsintervall in Sekunden für die Ausführung des Workflows an. | 43200 |
Synchronisierungszeit | Die Synchronisierungszeit, angegeben im 24-Stunden-Format. Dieser Wert kann ausgelassen werden. |
|
Timeout (Sekunden) | Gibt die Zeit an, zu der der Workflow ausgeführt werden dann, bevor er geschlossen und als fehlerhaft markiert wird. | 300 |
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.Database | ||
Parent Monitor | Microsoft.SQLServer.Windows.Rollup.Database.AutomaticConfiguration | ||
Category | ConfigurationHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.Windows.MonitorType.Database.DBConfigurationStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.Windows.Monitor.Database.AutoShrinkConfiguration" Accessibility="Public" Enabled="false" Target="SqlDiscW!Microsoft.SQLServer.Windows.Database" ParentMonitorID="Microsoft.SQLServer.Windows.Rollup.Database.AutomaticConfiguration" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Windows.MonitorType.Database.DBConfigurationStatus" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Windows.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>
<MonitoringType>$Target/Host/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>43200</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>