Синхронизации базы данных доступности

Microsoft.SQLServer.2014.AlwaysOn.DbrDataSynchronizationState (UnitMonitor)

Этот монитор проверяет состояние синхронизации данных реплики базы данных. Монитор принимает неисправное состояние, если состояние синхронизации данных NOT SYNCHRONIZING (не синхронизируется) или состояние отлично от SYNCHRONIZED (синхронизировано) для реплик баз данных с синхронной фиксацией. В противном случае монитор находится в состоянии "Исправно".

Knowledge Base article:

Сводка

Этот монитор проверяет состояние синхронизации данных реплики базы данных. Монитор принимает неисправное состояние, если состояние синхронизации данных NOT SYNCHRONIZING (не синхронизируется) или состояние отлично от SYNCHRONIZED (синхронизировано) для реплик баз данных с синхронной фиксацией. В противном случае монитор находится в состоянии "Исправно".

Причины

Состояние синхронизации данных некоторых баз данных доступности не является рабочим. Если это реплика доступности с асинхронной фиксацией, все базы данных доступности должны находиться в состоянии SYNCHRONIZING. Если это реплика с синхронной фиксацией, все базы данных доступности должны находиться в состоянии SYNCHRONIZED.

Решения

Устраните неполадку, связанную с подключением или приостановкой перемещения данных. Проверьте события, указывающие на данную проблему, с помощью среды SSMS, найдите ошибку базы данных и следуйте инструкциям по ее устранению.

Переопределяемые параметры

Название

Описание

Значение по умолчанию

Включено

 

Да

Создает предупреждения

 

Нет

Интервал (в секундах)

Повторяющийся интервал времени в секундах, по истечении которого запускается рабочий процесс.

900

Время ожидания (в секундах)

Определяет время, в течение которого возможно выполнение рабочего процесса перед закрытием и пометкой как сбойный.

300

Element properties:

TargetMicrosoft.SQLServer.2014.AlwaysOn.DatabaseReplica
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveFalse
Monitor TypeMicrosoft.SQLServer.2014.AlwaysOn.SystemPolicyScriptMonitorType
RemotableTrue
AccessibilityPublic
RunAsMicrosoft.SQLServer.2014.AlwaysOn.MonitoringAccount

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.AlwaysOn.DbrDataSynchronizationState" RunAs="Microsoft.SQLServer.2014.AlwaysOn.MonitoringAccount" TypeID="Microsoft.SQLServer.2014.AlwaysOn.SystemPolicyScriptMonitorType" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Target="AlwaysOnDisc!Microsoft.SQLServer.2014.AlwaysOn.DatabaseReplica" Priority="Normal">
<Category>AvailabilityHealth</Category>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="HealthState" HealthState="Success"/>
<OperationalState ID="Critical" MonitorTypeStateID="ErrorState" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<Interval>900</Interval>
<TimeoutSeconds>300</TimeoutSeconds>
<PolicyName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2014.AlwaysOn.DatabaseReplica"]/AvailabilityGroupName$-$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2014.AlwaysOn.DatabaseReplica"]/Name$-AlwaysOnDbrDataSynchronizationState</PolicyName>
<InstanceName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2014.AlwaysOn.DatabaseReplica"]/AvailabilityReplicaServerName$</InstanceName>
</Configuration>
</UnitMonitor>