Этот монитор определяет, что во временных границах, определенных в конфигурации доставки журналов, журнал не был восстановлен в место назначения доставки журналов.
Обратите внимание, что доставка журналов не поддерживается ни в одном из выпусков SQL Server Express.
Этот монитор определяет, что во временных границах, определенных в конфигурации доставки журналов, в месте назначения доставки журналов не был восстановлен журнал. При возникновении этого условия монитор переходит в состояние ошибки (критическое). После возобновления операций восстановления журнала и возврата их в определенные пороговые значения монитор возвращается в успешное (работоспособное) состояние. По умолчанию этот монитор формирует предупреждения, если находится в состоянии ошибки.
Доставка журналов не синхронизирована дольше, чем задано порогом восстановления. Порог восстановления определяется как число минут, которое может пройти между операциями восстановления до того, как будет сформировано сообщение.
Чтобы устранить неполадку, выполните следующие действия.
Удостоверьтесь, что служба агента SQL Server на экземпляре сервера-получателя работает и что задание восстановления в базе данных-получателе включено и выполняется по расписанию с подходящей периодичностью.
Возможно, произошла ошибка задания восстановления на сервере-получателе. В этом случае проверьте журнал заданий восстановления, чтобы попытаться найти ошибку.
Заданию восстановления доставки журналов, выполняющемуся на экземпляре сервера-получателя, не удается соединиться с экземпляром сервера мониторинга для обновления таблицы log_shipping_monitor_secondary. Причиной этого может быть проблема проверки подлинности между экземпляром сервера мониторинга и экземпляром сервера-получателя.
Неправильное пороговое значение предупреждения резервного копирования. В идеальном случае это значение должно быть минимум в три раза больше частоты запуска задания восстановления. Если частота запуска задания восстановления изменяется после настройки доставки журналов, когда она уже успешно работает, необходимо соответствующим образом обновить пороговое значение предупреждения резервного копирования.
Когда экземпляр сервера мониторинга переходит в режим "вне сети", а затем снова в режим "в сети", таблица log_shipping_monitor_secondary не обновляется текущими значениями до тех пор, пока не будет выполнено задание предупреждения. Ошибка 14421 может произойти после успешного завершения задания восстановления с сообщением "Не удалось найти файл резервной копии журнала, который можно использовать для базы данных-получателя". В этом случае время восстановления не обновляется. Причиной ошибки в этом случае может быть проблема, связанная с заданием копирования.
Для обновления таблиц мониторинга новейшими данными для базы данных-получателя выполните процедуру sp_refresh_log_shipping_monitor на экземпляре сервера-получателя.
На экземпляре сервера-получателя или сервера мониторинга установлены неправильная дата или время. При этом также могут формироваться предупреждения. Вероятно, была изменена системная дата или время на одном из этих серверов.
Примечание. Разные часовые пояса на двух экземплярах серверов не должны быть причиной проблемы.
Раздел о доставке журналов в электронной документации по SQL Server 2008:
http://go.microsoft.com/fwlink/?LinkId=789160
Имя | Описание | Значение по умолчанию |
Приоритет предупреждения | Определяет приоритет предупреждения. | Обычные |
Серьезность предупреждения | Определяет серьезность предупреждения. | Ошибка |
Включено | Включает или отключает рабочий процесс. | Да |
Создает предупреждения | Определяет, создает ли рабочий процесс предупреждения. | Да |
Target | Microsoft.SQLServer.2008.Database | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.2SingleEventLog2StateMonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2008.Database.LogShippingDestinationMonitor" Accessibility="Public" Enabled="true" Target="SQL2008Core!Microsoft.SQLServer.2008.Database" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.Database.LogShippingDestinationMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="DestOutOfSync" MonitorTypeStateID="FirstEventRaised" HealthState="Error"/>
<OperationalState ID="DestInSync" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>Application</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">14421</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>.$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$ </Pattern>
</RegExExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>Application</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">18268</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>: $Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$,</Pattern>
</RegExExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>