Этот монитор определяет, что во временных границах, определенных в конфигурации доставки журналов, не было выполнено резервное копирование журналов в источнике доставки журналов.
Обратите внимание, что доставка журналов не поддерживается ни в одном из выпусков SQL Server Express.
Этот монитор определяет, что во временных границах, определенных в конфигурации доставки журналов, в источнике доставки журналов не были созданы резервные копии журналов. При возникновении этого условия монитор переходит в состояние ошибки (критическое). После возобновления операций резервного копирования журнала и возврата их в определенные пороговые значения монитор возвращается в успешное (работоспособное) состояние. По умолчанию этот монитор формирует предупреждения, если находится в состоянии ошибки.
По умолчанию этот монитор отключен в выпусках SQL Server Express.
Доставка журналов не синхронизирована за порогом резервного копирования. Порог резервного копирования определяется как число минут, которое может пройти между заданиями резервного копирования доставки журналов до того, как будет сформировано предупреждение. Оно не обязательно свидетельствует о проблеме с доставкой журналов. Предупреждение может указывать на одну из следующих неполадок.
Задание резервного копирования не выполняется. Возможные причины ошибки: служба агента SQL Server на экземпляре сервера-источника не работает, задание отключено или было изменено расписание задания.
Ошибка задания резервного копирования. Возможные причины ошибки: неправильный путь к папке резервного копирования, диск заполнен или любая другая причина, из-за которой инструкция BACKUP может завершиться неуспешно.
Чтобы устранить неполадку, выполните следующие действия.
Удостоверьтесь, что служба агента SQL Server на экземпляре сервера-источника работает и что задание резервного копирования в базе данных-источнике включено и выполняется по расписанию с подходящей периодичностью.
Возможно, произошла ошибка задания резервного копирования на сервере-источнике. В этом случае проверьте журнал заданий резервного копирования, чтобы попытаться найти ошибку.
Заданию резервного копирования доставки журналов, выполняющемуся на экземпляре сервера-источника, не удается соединиться с экземпляром сервера мониторинга для обновления таблицы log_shipping_monitor_primary. Причиной этого может быть проблема проверки подлинности между экземпляром сервера мониторинга и экземпляром сервера-источника.
Неправильное пороговое значение предупреждения резервного копирования. В идеальном случае это значение должно быть минимум в три раза больше частоты запуска задания резервного копирования. Если частота запуска задания резервного копирования изменяется после настройки доставки журналов, когда она уже успешно работает, необходимо соответствующим образом обновить пороговое значение предупреждения резервного копирования.
Когда экземпляр сервера мониторинга переходит в режим "вне сети", а затем снова в режим "в сети", таблица log_shipping_monitor_primary не обновляется текущими значениями до тех пор, пока не будет выполнено задание предупреждения. Для обновления таблиц мониторинга новейшими данными для базы данных-источника выполните процедуру 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.LogShippingSourceMonitor" 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.LogShippingSourceMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="SourceNotBackedUp" MonitorTypeStateID="FirstEventRaised" HealthState="Error"/>
<OperationalState ID="SourceBackUpComplete" 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">14420</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">18265</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>