Überwacht die Einstellung "Automatisch verkleinern" 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 "Automatisch 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 "Automatisch verkleinern" auf ON festgelegt ist, werden die Datenbankdateien möglicherweise periodisch verkleinert. Sowohl Daten- als auch Protokolldateien können automatisch verkleinert werden. "Automatisch 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 periodisch ausgeführten Überprüfung auf nicht verwendeten Speicherplatz nicht automatisch verkleinert. Durch die 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 "Automatisch verkleinern" kann auch zu einer übermäßigen Indexfragmentierung und E/A sowie zu einem sehr großen Transaktionsprotokoll führen. Verwenden Sie die Einstellung "Automatisch 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:
Ä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)
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.AutoShrink" 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.AutoShrink.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>AutoShrink</ConfigValue>
<ExpectedValue>OFF</ExpectedValue>
<ExcludeOnExpress>false</ExcludeOnExpress>
<SQLSKU>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/Edition$</SQLSKU>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>