次の方法で共有


MSSQL_ENG020554

適用対象: SQL Server Azure SQL Managed Instance

メッセージの詳細

属性 Value
製品名 SQL Server
イベント ID 20554
イベント ソース MSSQLSERVER
コンポーネント SQL Server データベース エンジン
シンボル名
メッセージ テキスト レプリケーション エージェントでは、進捗状況メッセージが %ld 分間ログに記録されていません。 この現象は、エージェントの応答が止まったか、システムの使用率が高いことを示している場合があります。 レコードがレプリケーション先にレプリケートされていること、およびサブスクライバー、パブリッシャー、ディストリビューターへの接続がアクティブなままであることを確認してください。

説明

レプリケーション エージェントの検査 ジョブは、指定された間隔 (既定では 10 分) で実行され、各レプリケーション エージェントの状態を確認します。 エージェントが、最後の検査ジョブを実行してからまったく進捗状況メッセージを記録していない場合は、MSSQL_ENG020554 エラーが発生する可能性があります。 他のレプリケーション処理が実行されていない場合でも、エージェントは少なくとも履歴メッセージだけは記録する必要があります。 レプリケーション エージェントは、予想どおり応答していない場合でも、停止したり障害が発生するとは限りません (エージェントで障害が発生すると、エラー MSSQL_ENG020536 が発生します)。

MSSQL_ENG020554 は、次のような問題が原因で発生する可能性があります。

  • エージェントがビジーである場合

    エージェントの検査ジョブでポーリングが実行されているときにエージェントがビジーで応答できない場合、エージェントの検査ジョブは、レプリケーション エージェントが正しく機能しているかどうかについて報告できません。 レプリケーション エージェントがビジーになるのは、レプリケートされているデータの量が多すぎたり、アプリケーションの設計または構成の問題が原因でプロセスが長時間実行されるなど、さまざまな原因があります。

  • エージェントがトポロジ内のコンピューターのいずれにもログインできない場合

    すべてのエージェントには -LoginTimeOut パラメーター (既定では 15 秒に設定) が指定されています。このパラメーターによって、エージェントがレプリケーション ノードにログインする (マージ エージェントがパブリッシャーにログインするなど) 時間が決まります。 -LoginTimeOut の値を、レプリケーション エージェントの検査ジョブを実行する間隔よりも高く設定すると、ログインの問題がエラーの根本原因になる場合があります。エージェントで他の具体的なエラーが発生する前にエラー MSSQL_ENG020554 が発生します。

ユーザーの操作

必要な操作は、エラーが発生した原因によって異なります。

  • このエラーが発生するすべてのケースで、次のアクションを実行します。

    レプリケーション モニターでエラーの詳細を確認してから、エージェントが停止している場合は再起動します。 エラーの詳細には、エージェントが正しく実行されなかった原因について追加の情報が示されている場合があります。 エージェントが実行中の場合は、エージェントを停止および再起動しないでください。停止および再起動すると、問題がさらに悪化する可能性があります。 レプリケーション モニターでのエージェントの状態やエラーの詳細の表示について詳しくは、レプリケーション モニターを使用した情報の表示とタスクの実行に関するページを参照してください。

  • エージェントがビジーであるためにこのエラーが頻繁に発生する場合は、次の操作を実行します。

    場合によっては、エージェントの処理時間が短くなるように、アプリケーションを再設計する必要があります。

    [ジョブのプロパティ] ダイアログ ボックスを使用してエージェントの状態を確認する間隔を長くすることができます。 レプリケーション ジョブの場合のこのダイアログ ボックスへのアクセスの詳細については、レプリケーション モニターを使用した情報の表示とタスクの実行に関するページを参照してください。

  • エージェントがトポロジ内のコンピューターのいずれにもログインできない場合には、次の操作を実行します。

    -LoginTimeOut の値を、レプリケーション エージェントの検査ジョブを実行する間隔よりも低い値に設定することをお勧めします。 場合によっては、ログインがタイムアウトするネットワークの問題が原因で、 -LoginTimeOut の値が高く設定されます。 -LoginTimeOut が低く設定されている場合、レプリケーションはより具体的なエラーを報告できるため、アクセス許可、ネットワークの問題、またはその他の問題によって発生する可能性のあるログインの問題をトラブルシューティングできます。 エージェント パラメーターは、エージェント プロファイルおよびコマンド ラインで指定できます。 詳細については、以下を参照してください:

参照

レプリケーション エージェントの管理
エラーとイベントのリファレンス (レプリケーション)
Replication Distribution Agent
レプリケーション ログ リーダー エージェント
Replication Merge Agent
レプリケーション キュー リーダー エージェント
Replication Snapshot Agent