このモニターは、ログ配布構成の一部として定義されているしきい値内でログ配布元がログをバックアップしていない状況を検出します。
一部のログ配布は、いずれのエディションの SQL Server Express でもサポートされていないことにご注意ください。
このモニターは、ログ配布構成の一部として定義されているしきい値内でログ配布元がログをバックアップしていない状況を検出します。この条件が発生すると、モニターが重大な状態に変わります。ログのバックアップが再開され、定義されたしきい値内でバックアップが行われると、モニターは正常状態に戻ります。既定では、このモニターは、エラー状態になった場合にアラートを生成します。
バックアップのしきい値を超えましたが、ログ配布が同期されていません。バックアップのしきい値は、ログ配布のバックアップが完了するまでの許容時間 (分数) です。この時間が経過すると警告が生成されます。このメッセージは、必ずしもログ配布に関する問題を示すとは限りません。このメッセージは次の問題のいずれかを示す可能性があります。:
バックアップ ジョブが実行されていない。原因として、プライマリ サーバー インスタンスで SQL Server エージェント サービスが実行されていないか、バックアップ ジョブが無効になっているか、またはバックアップ ジョブのスケジュールが変更されていることが考えられます。
バックアップ ジョブが失敗している。原因として、バックアップ フォルダーのパスが有効でないか、ディスクがいっぱいになっているか、またはその他の理由で BACKUP ステートメントが失敗したことが考えられます。
この問題をトラブルシューティングするには、次の手順を実行します。
プライマリ サーバー インスタンスで SQL Server エージェント サービスが実行されていることを確認します。また、プライマリ データベースのバックアップ ジョブが有効になっており、適切な頻度で実行するようにスケジュール設定されていることを確認します。
プライマリ サーバーのバックアップ ジョブが失敗している可能性があります。この場合は、バックアップ ジョブのジョブ履歴を参照して原因を探してください。
プライマリ サーバー インスタンスでログ配布のバックアップ ジョブを実行する際、監視サーバー インスタンスに接続して log_shipping_monitor_primary テーブルを更新できない可能性があります。その場合、監視サーバー インスタンスとプライマリ サーバー インスタンス間での認証に問題があると思われます。
バックアップの警告のしきい値に、正しくない値が設定されている可能性があります。この値は、バックアップ ジョブの少なくとも 3 倍の頻度に設定するのが理想的です。ログ配布を構成し、有効にした後で、バックアップ ジョブの頻度を変更した場合は、それに合わせてバックアップの警告しきい値も更新する必要があります。
監視サーバー インスタンスがオフラインになり、その後オンラインに戻ったとき、警告メッセージ ジョブが実行される前に、log_shipping_monitor_primary テーブルが現在の値に更新されません。監視テーブルを更新して、プライマリ データベースの最新データを反映させるには、プライマリ サーバー インスタンスで sp_refresh_log_shipping_monitor を実行します。
プライマリ サーバー インスタンスまたはモニター サーバー インスタンスで、日付または時刻が正しく設定されていません。これが原因で、アラート メッセージが生成される場合もあります。これらのサーバーのいずれかで、システムの日付または時刻が変更された可能性があります。
メモ: 2 つのサーバー インスタンスで異なるタイム ゾーンを使用していることは、問題の原因にはなりません。
SQL Server 2014 オンライン ブックのログ配布に関するトピック
http://go.microsoft.com/fwlink/?LinkId=799279
名前 | 説明 | 既定値 |
アラートの優先度 | アラートの優先順位を定義します。 | 中 |
アラートの重要度 | アラートの重大度を定義します。 | エラー |
有効 | ワークフローを有効または無効にします。 | はい |
アラートを生成する | ワークフローがアラートを生成するかどうかを定義します。 | はい |
Target | Microsoft.SQLServer.2014.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.2014.Database.LogShippingSourceMonitor" Accessibility="Public" Enabled="true" Target="SQL2014Core!Microsoft.SQLServer.2014.Database" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.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="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>.$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.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="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>: $Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$,</Pattern>
</RegExExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>