이 모니터는 Microsoft SQL Server가 보고한 데이터베이스 백업의 상태를 확인합니다. 참고: 이 모니터는 기본적으로 사용하지 않도록 설정되어 있습니다. 필요한 경우 사용하도록 설정하려면 재정의를 사용하십시오.
이 모니터는 Microsoft SQL Server가 보고한 데이터베이스 백업의 존재 여부 및 기간을 확인합니다. 이 작업은 SQL 인스턴스의 master 데이터베이스에 대해 쿼리를 실행하고 데이터베이스 백업의 기간을 반환하여 수행됩니다.
데이터베이스가 너무 오래 동안 백업되지 않았습니다.
문제를 해결하려면 데이터베이스 백업을 수행해야 합니다.
이후에 이 문제가 발생하지 않도록 하려면 응용 프로그램 및 비즈니스 요구 사항에 따라 자동화된 백업을 예약하는 것이 좋습니다.
데이터베이스 백업 상태 모니터에 데이터베이스가 보조 복제본인지 아닌지를 추적할 논리가 없습니다.
관련된 데이터베이스 중 하나 이상의 백업이 필요한 고급 백업 논리가 AOG에 있으므로 모니터가 가양성 알림을 생성할 수 있습니다.
모니터는 기본적으로 사용하지 않도록 설정되어 있으며 사용자 환경의 모니터링 시나리오를 사용하도록 설정하려는 경우 데이터베이스 백업을 저장하는 데 사용되지 않는 모든 서버에 대해 모니터를 사용하지 않는 상태로 유지하는 것이 좋습니다.
SQL Server 데이터베이스 백업을 위한 최선의 방법 권장 사항
이름 | 설명 | 기본값 |
알림 우선 순위 | 알림 우선 순위를 정의합니다. | 보통 |
알림 심각도 | 알림 심각도를 정의합니다. | 오류 |
백업 기간(일) | 대상 백업 빈도(일)는 RPO(복구 지점 목표)에 따라 설정되어야 합니다 | 7 |
사용 | 워크플로를 사용하거나 사용하지 않도록 설정합니다. | 아니요 |
알림 생성 | 워크플로가 알림을 생성하는지를 정의합니다. | 예 |
간격(초) | 워크플로를 실행하는 반복 시간 간격(초)입니다. | 86400 |
동기화 시간 | 24시간 형식으로 지정된 동기화 시간입니다. 생략될 수 있습니다. |
|
제한 시간(초) | 워크플로를 닫고 실패로 표시하기 전에 워크플로를 실행할 수 있는 시간을 지정합니다. | 300 |
Target | Microsoft.SQLServer.2014.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.2014.DBBackupStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2014.Database.DBBackupStatusMonitor" Accessibility="Public" Enabled="false" Target="SQL2014Core!Microsoft.SQLServer.2014.Database" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.DBBackupStatus" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.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="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</AlertParameter3>
<AlertParameter4>$Data/Context/Property[@Name='$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.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="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ConnectionString$</ConnectionString>
<DatabaseName>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</DatabaseName>
<Threshold>7</Threshold>
<IntervalSeconds>86400</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>