Verbleibender DB-Dateispeicherplatz

Microsoft.SQLServer.2014.Monitoring.DBFileSpaceMonitor (UnitMonitor)

Dieser Monitor gibt eine Warnung aus, wenn der verfügbare Speicherplatz (einschließlich des bereits zugewiesenen Platzes und des freien Platzes auf den Medien) unter den eingestellten Warnungsschwellwert fällt und gibt diesen in Prozent der Summe aus Datengröße und freiem Datenträgerplatz an. Der Monitor gibt eine kritische Warnmeldung aus, wenn der verfügbare Speicherplatz unter den kritischen Schwellenwert fällt.

Knowledge Base article:

Zusammenfassung

Der Monitor prüft den verfügbaren Speicherplatz in der Datei und auf den Medien, auf denen die Datei gehostet wird. Der verfügbare Platz auf den Medien wird nur mit einbezogen, wenn die automatische Vergrößerung für die vorgegebene Datei aktiviert ist.

Ursachen

Ein fehlerhafter Status wird durch zu wenig verfügbaren Speicherplatz für diese Datei verursacht. Mögliche Ursachen von zu wenig verfügbarem Speicherplatz:

Rufen Sie die Leistungsdaten über folgenden Link auf: DB File Free Space Performance Data

Keine automatische Vergrößerung

Für eine Datei, für die keine automatische Vergrößerung festgelegt ist, wird der verfügbare Speicherplatz aus der Differenz zwischen der anfänglichen Größe einer Datei und dem verwendeten Speicherplatz gebildet.

Automatische Vergrößerung aktiviert

Wenn die automatische Vergrößerung aktiviert ist, wird der verfügbare Speicherplatz als Teil des insgesamt verfügbaren Speicherplatzes eingeschlossen. Neben der Differenz zwischen der Dateigröße und dem verwendeten Speicherplatz wird der verfügbare Speicherplatz für Dateien mit aktivierter automatischer Vergrößerung aus dem Minimum der Differenz zwischen der maximalen Größe und der Dateigröße oder der Differenz zwischen der maximalen Größe und dem auf dem Datenträger verbleibenden freien Speicherplatz berechnet.

Wenn für Datenbankdateien mit aktivierter automatischer Vergrößerung zu wenig Speicherplatz verfügbar ist, kann dies bedeuten, dass die Datei sich den Grenzen des logischen Laufwerks nähert, das als Host fungiert. Für Dateien, für die die automatische Vergrößerung mit einer maximalen Größe aktiviert ist, kann ein geringer verfügbarer Speicherplatz auch bedeuten, dass sich die Datei der maximalen Größe annähert, die für eine Datei angegeben ist.

Bei den Berechnungen für den verfügbaren Speicherplatz wird auch berücksichtigt, dass die Dateigröße möglicherweise überhaupt nicht zunimmt, wenn die Größenzunahme der Datei den auf dem Datenträger verbleibenden Speicherplatz überschreitet. Zudem wird berücksichtigt, dass die Dateigröße nicht zunehmen kann, wenn die Differenz zwischen der maximalen Größe und der aktuellen Größe kleiner ist als die Größenzunahme. In diesen Situationen wird der auf dem Datenträger verbleibende freie Speicherplatz nicht als Teil des verfügbaren Speicherplatzes eingeschlossen, da keine weitere Größenzunahme möglich ist.

Lösungen

Dieses Problem können Sie möglicherweise durch eine der folgenden Aktionen beheben:

Siehe Onlinedokumentation zu SQL Server:  Architektur für Dateien und Dateigruppen

Parameter, die außer Kraft gesetzt werden können

Name

Beschreibung

Standardwert

Maximale Dateigröße in Azure (MB)

Die maximale Größe von Datendateien, die in Azure BLOB-Speicher gespeichert sind. Beim Workflow wird dieser Wert als maximale Speicherkapazität für jede Datei berücksichtigt.

1048576

Aktiviert

 

Ja

Generiert Warnungen

 

Ja

Intervall (Sekunden)

Das periodische Intervall in Sekunden, in dem der Workflow ausgeführt werden soll.

900

Synchronisierungszeit

Die in einem 24-Stunden-Format angegebene Synchronisierungszeit. Kann ausgelassen werden.

 

Kritischer Schwellenwert

Der Status des Monitors ändert sich zu "kritisch", wenn der Wert diesen Schwellenwert unterschreitet. Wenn sich der Status zwischen diesem Schwellenwert und dem Warnungsschwellenwert (einschließlich) befindet, wird der Monitor in einen Warnstatus versetzt.

10

Warnungsschwellenwert

Der Status des Monitors ändert sich zu "Warnung", wenn der Wert unter diesen Schwellenwert fällt.

20

Timeout (Sekunden)

Gibt die Zeit an, die der Workflow ausgeführt werden darf, bevor er geschlossen und als fehlgeschlagen markiert wird.

300

Element properties:

TargetMicrosoft.SQLServer.2014.DBFile
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2014.DBFileSizeMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2014: Der Speicherplatz der DB-Datei geht zur Neige
Der Speicherplatz für DB-Datei "{0}" für Dateigruppe "{1}" in der Datenbank "{2}" in SQL-Instanz "{3}" auf Computer "{4}" geht zur Neige. Weitere Details finden Sie im entsprechenden Wissensdatenbankartikel.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.Monitoring.DBFileSpaceMonitor" Accessibility="Public" Enabled="true" Target="SQL2014Core!Microsoft.SQLServer.2014.DBFile" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.DBFileSizeMonitorType" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Monitoring.DBFileSpaceMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.File"]/FileName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.FileGroup"]/GroupName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</AlertParameter3>
<AlertParameter4>$Target/Host/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</AlertParameter4>
<AlertParameter5>$Target/Host/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter5>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderThreshold1" MonitorTypeStateID="UnderThreshold1" HealthState="Error"/>
<OperationalState ID="OverThreshold1UnderThreshold2" MonitorTypeStateID="OverThreshold1UnderThreshold2" HealthState="Warning"/>
<OperationalState ID="OverThreshold2" MonitorTypeStateID="OverThreshold2" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<ConnectionString>$Target/Host/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ConnectionString$</ConnectionString>
<ServerName>$Target/Host/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ServerName>
<SqlInstanceName>$Target/Host/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</SqlInstanceName>
<ObjectName>SQL DB File</ObjectName>
<CounterName>DB File Free Space (%)</CounterName>
<InstanceName/>
<DatabaseName>$Target/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</DatabaseName>
<DBFileId>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.File"]/FileID$</DBFileId>
<Value>$Data/Property[@Name='FreeSpacePercent']$</Value>
<Threshold1>10</Threshold1>
<Threshold2>20</Threshold2>
<TimeoutSeconds>300</TimeoutSeconds>
<AzureMaxFileSizeMB>1048576</AzureMaxFileSizeMB>
</Configuration>
</UnitMonitor>