レプリケーション エージェントの概要

適用対象: SQL ServerAzure SQL Managed Instance

レプリケーションでは、エージェントと呼ばれる多数のスタンドアロン プログラムを使用して、変更の監視やデータの配信に関連するタスクを実行します。 既定では、レプリケーション エージェントは SQL Server エージェントでスケジュールされたジョブとして実行されるため、ジョブを実行するためには SQL Server エージェントが実行中である必要があります。 レプリケーション エージェントはコマンド ラインから実行することも、レプリケーション管理オブジェクト (RMO) を使用するアプリケーションから実行することもできます。 レプリケーション エージェントは、SQL Server レプリケーション モニターと SQL Server Management Studio から管理できます。

SQL Server エージェント

SQL Server エージェントでは、レプリケーションで使用するエージェントをホストし、スケジュールを設定することによって、レプリケーション エージェントを簡単に実行できるようになっています。 SQL Server エージェントは、レプリケーション以外の操作も管理および監視します。 詳細については、「 Configure SQL Server Agent」をご覧ください。

重要

SQL Server のインストール時に、サービスが自動開始されるように明示的に選択されていない限り、SQL Server エージェント サービスは既定で無効になります。 SQL Server エージェント サービスを開始する方法の詳細については、「SQL Server エージェント サービスの開始、停止、または一時停止」を参照してください。

スナップショット エージェント

スナップショット エージェントは、一般的にすべての種類のレプリケーションで使用されます。 スナップショット エージェントは、パブリッシュされたテーブルやその他のオブジェクトのスキーマと初期データ ファイルを作成し、スナップショット ファイルを格納して、同期に関する情報をディストリビューション データベースに記録します。 スナップショット エージェントはディストリビューター側で実行されます。 詳細については、「 Replication Snapshot Agent」を参照してください。

ログ リーダー エージェント (Log Reader Agent)

ログ リーダー エージェントは、トランザクション レプリケーションで使用されます。 レプリケーションとしてマークが付けられたトランザクションを、パブリッシャーのトランザクション ログから、ディストリビューション データベースに移動します。 トランザクション レプリケーションを使用してパブリッシュされた各データベースには、ディストリビューター上で実行され、パブリッシャーに接続する独自のログ リーダー エージェントがあります (ディストリビューターはパブリッシャーと同じコンピューター上に存在していてもかまいません)。 詳細については、「 Replication Log Reader Agent」を参照してください。

ディストリビューション エージェント

ディストリビューション エージェントは、スナップショット レプリケーション、およびトランザクション レプリケーションで使用されます。 ディストリビューション エージェントは初期スナップショットをサブスクライバーに適用し、ディストリビューション データベースに保持されているトランザクションをサブスクライバーに移動します。 ディストリビューション エージェントは、プッシュ サブスクリプションの場合はディストリビューターで実行され、プル サブスクリプションの場合はサブスクライバーで実行されます。 詳細については、「 Replication Distribution Agent」を参照してください。

[マージ エージェント]

マージ エージェントは、マージ レプリケーションで使用されます。 マージ エージェントは、初期スナップショットをサブスクライバーに適用し、データの増分変更を移動および調整します。 マージ サブスクリプションごとにマージ エージェントがあり、パブリッシャーとサブスクライバーの両方に接続し、両方を更新します。 マージ エージェントは、プッシュ サブスクリプションの場合はディストリビューターで実行され、プル サブスクリプションの場合はサブスクライバーで実行されます。 既定では、マージ エージェントはサブスクライバーからパブリッシャーに変更をアップロードし、パブリッシャーからサブスクライバーに変更をダウンロードします。 詳細については、「 Replication Merge Agent」を参照してください。

キュー リーダー エージェント (Queue Reader Agent)

キュー リーダー エージェントは、キュー更新オプションによるトランザクション レプリケーションで使用されます。 このエージェントはディストリビューターで実行され、サブスクライバーで行われた変更をパブリッシャーに戻します。 ディストリビューション エージェントやマージ エージェントとは異なり、キュー リーダー エージェントは 1 つのインスタンスだけで、ディストリビューション データベースのすべてのパブリッシャーおよびパブリケーションに対応します。 キュー リーダー エージェントの詳細については、「 Replication Queue Reader Agent」を参照してください。 更新可能なサブスクリプションの詳細については、「 Updatable Subscriptions for Transactional Replication」を参照してください。

レプリケーション メンテナンス ジョブ

レプリケーションには、定期的なメンテナンスや要求時メンテナンスを実行する多数のメンテナンス ジョブがあります。 詳細については、「Replication Agent Administration」 (レプリケーション エージェントの管理) を参照してください。

参照

レプリケーション エージェントを起動および停止する (SQL Server Management Studio)
レプリケーション メンテナンス ジョブの実行 (SQL Server Management Studio)
Replication Agent Executables Concepts
レプリケーション エージェントの管理