Dieser Monitor überprüft den von Microsoft® SQL Server™ gemeldeten Datenbanksicherungsstatus.
Dieser Monitor überprüft das Vorhandensein und das Alter der Datenbanksicherung, wie von Microsoft® SQL Server™ gemeldet. Dazu wird eine Abfrage für die master-Datenbank der SQL-Instanz ausgeführt, und das Alter der Datenbanksicherung wird zurückgegeben.
Datenbank wurde vor nicht allzu langer Zeit gesichert.
Sie sollten eine Datenbanksicherung ausführen, um das Problem zu beheben.
Um dieses Problem in Zukunft auszuschließen, wird empfohlen, eine automatisierte Sicherung gemäß den Anforderungen der Anwendungs- und Geschäftsanforderungen zu planen.
Der Monitor für den Datenbanksicherungsstatus verfügt über keine Logik zum Nachverfolgen, ob es sich bei der Datenbank um ein sekundäres Replikat handelt oder nicht.
Da AOG über eine erweiterte Sicherungslogik verfügt, die eine Sicherung für mindestens eine der beteiligten Datenbanken erforderlich macht, werden vom Monitor möglicherweise falsch positive Warnungen generiert.
Der Monitor ist standardmäßig deaktiviert. Wenn Sie das Überwachungsszenario für die Umgebung aktivieren möchten, ist es empfehlenswert, den Monitor für alle Server deaktiviert zu lassen, die nicht zum Speichern der Datenbanksicherung verwendet werden.
Best Practice-Empfehlungen für SQL Server-Datenbanksicherungen
Name | Beschreibung | Standardwert |
Warnungspriorität | Definiert die Warnungspriorität. | Normal |
Warnungsschweregrad | Definiert den Warnungsschweregrad. | Fehler |
Sicherungszeitraum (Tage) | Sicherungszeitraum | 7 |
Aktiviert | Aktiviert oder deaktiviert den Workflow. | Nein |
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. | 86400 |
Synchronisierungszeit | Die Synchronisierungszeit, angegeben im 24-Stunden-Format. Kann ausgelassen werden. |
|
Timeout (Sekunden) | Gibt an, wie lange der Workflow ausgeführt werden darf, bevor er geschlossen und als fehlerhaft markiert wird. | 300 |
Target | Microsoft.SQLServer.2012.Database | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2012.DBBackupStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2012.Database.DBBackupStatusMonitor" Accessibility="Public" Enabled="false" Target="SQL2012Core!Microsoft.SQLServer.2012.Database" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2012.DBBackupStatus" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2012.Database.DBBackupStatusMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</AlertParameter3>
<AlertParameter4>$Data/Context/Property[@Name='$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$']$</AlertParameter4>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Good" MonitorTypeStateID="Good" HealthState="Success"/>
<OperationalState ID="Bad" MonitorTypeStateID="Bad" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ConnectionString>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ConnectionString$</ConnectionString>
<DatabaseName>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</DatabaseName>
<Threshold>7</Threshold>
<IntervalSeconds>86400</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>