Estado de copia de seguridad de base de datos

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

Este monitor comprueba el estado de la copia de seguridad de base de datos devuelto por Microsoft® SQL Server™.

Knowledge Base article:

Resumen

Este monitor comprueba la existencia y antigüedad de la copia de seguridad de base de datos devueltas por Microsoft® SQL Server™. Para ello, se ejecuta una consulta en la base de datos maestra de la instancia de SQL y se devuelve la antigüedad de la copia de seguridad de base de datos.

Causas

La copia de seguridad de base de datos no se ha realizado durante demasiado tiempo.

Soluciones

Debe realizar una copia de seguridad de la base de datos para resolver el problema.

Para eliminar este problema en el futuro se recomienda programar una copia de seguridad automatizada según las necesidades de la aplicación y los requisitos empresariales.

Externo

Prácticas recomendadas para las copias de seguridad de base de datos de SQL Server

Element properties:

TargetMicrosoft.SQLServer.2012.Database
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2012.DBBackupStatus
RemotableTrue
AccessibilityPublic
Alert Message
La copia de seguridad de la base de datos se debería realizar
La copia de seguridad de la base de datos '{2}' de la instancia de SQL Server '{1}' en el equipo '{0}' no se ha realizado durante {3} días.
RunAsDefault

Source Code:

<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>