État de la sauvegarde de base de données

Microsoft.SQLServer.2008.Database.DBBackupStatusMonitor (UnitMonitor)

Cette analyse vérifie l'état de la sauvegarde de base de données, comme indiqué par Microsoft® SQL Server™.

Knowledge Base article:

Résumé

Cette analyse vérifie l'existence et l'âge de la sauvegarde de base de données, comme indiqué par Microsoft® SQL Server™. Cette opération est effectuée en exécutant une requête sur la base de données master de l'instance SQL et en retournant l'âge de la sauvegarde de base de données.

Causes

La base de données n'a pas été sauvegardée pendant trop longtemps.

Solutions

Vous devez effectuer une sauvegarde de la base de données pour résoudre le problème.

Pour éviter ce problème à l'avenir, il est recommandé de planifier une sauvegarde automatisée en fonction des besoins de l'application et des exigences de l'entreprise.

Externe

L'analyse de statut de la sauvegarde ne dispose pas d'une logique pour suivre si la base de données est ou non un réplica secondaire.

Comme AOG possède une logique de sauvegarde avancée nécessitant une sauvegarde pour au moins une des bases de données concernées, l'analyse peut générer des alertes qui sont des faux positifs.

L'analyse est désactivée par défaut. Si vous souhaitez activer le scénario d'analyse pour votre environnement, il est recommandé de garder l'analyse désactivée pour tous les serveurs qui ne sont pas utilisés pour stocker la sauvegarde de base de données.

Externe

Recommandations relatives aux sauvegardes de base de données SQL Server

Element properties:

TargetMicrosoft.SQLServer.2008.Database
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2008.DBBackupStatus
RemotableTrue
AccessibilityPublic
Alert Message
La sauvegarde de la base de données doit être effectuée
La base de données « {2} » dans l'instance de SQL Server « {1} » sur l'ordinateur « {0} » n'a pas été sauvegardée depuis {3} jours.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2008.Database.DBBackupStatusMonitor" Accessibility="Public" Enabled="false" Target="SQL2008Core!Microsoft.SQLServer.2008.Database" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2008.DBBackupStatus" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.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>