此监视器检查数据库副本的数据同步状态。当数据同步状态为 NOT SYNCHRONIZING 或同步提交数据库副本的状态不为 SYNCHRONIZED 时,此监视器处于不正常状态。
此可用性数据库的数据同步状态不正常。在异步-提交可用性副本上,每个可用性数据库都应该处于“正在同步”状态。在同步-提交副本上,每个可用性数据库都应该处于“已同步”状态。
可用性副本可能已断开连接
数据移动可能已挂起。
数据库可能无法访问。
可能存在由于网络滞后或主副本/辅助副本上的负载导致的临时延迟问题。
解决所有连接或数据移动挂起问题。使用 SSMS 检查事件是否有问题并查找数据库错误,然后按照特定错误的故障排除步骤解决问题。
Target | Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplica |
Parent Monitor | System.Health.AvailabilityState |
Category | AvailabilityHealth |
Enabled | True |
Alert Generate | False |
Alert Auto Resolve | False |
Monitor Type | Microsoft.SQLServer.2012.AlwaysOn.SystemPolicyScriptMonitorType |
Remotable | True |
Accessibility | Public |
RunAs | Microsoft.SQLServer.2012.AlwaysOn.MonitoringAccount |
<UnitMonitor ID="Microsoft.SQLServer.2012.AlwaysOn.DbrDataSynchronizationState" RunAs="Microsoft.SQLServer.2012.AlwaysOn.MonitoringAccount" TypeID="Microsoft.SQLServer.2012.AlwaysOn.SystemPolicyScriptMonitorType" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Target="AlwaysOnDisc!Microsoft.SQLServer.2012.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.2012.AlwaysOn.DatabaseReplica"]/AvailabilityGroupName$-$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplica"]/Name$-AlwaysOnDbrDataSynchronizationState</PolicyName>
<InstanceName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplica"]/AvailabilityReplicaServerName$</InstanceName>
</Configuration>
</UnitMonitor>