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

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

SQL Server エージェント

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

重要な注意事項重要

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

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

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

ログ リーダー エージェント

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

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

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

マージ エージェント

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

キュー リーダー エージェント

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

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

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