レプリケーション エージェント実行可能ファイルの概念
レプリケーション エージェントは、次のような方法でプログラムから制御できます。
Microsoft.SqlServer.Replication 名前空間のマネージ エージェント プログラミング インターフェイスを使用する。
エージェントの実行可能ファイルを一連のパラメータを指定してコマンド プロンプトから呼び出す。
レプリケーション エージェントはコマンド プロンプトから直接呼び出すことができるため、コマンド ライン スクリプトをバッチ ファイル化することで、プログラムからエージェントにアクセスできます。エージェントをコマンド プロンプトから呼び出した場合、そのエージェントは、エージェントを呼び出したユーザーまたはバッチ ファイルを実行したユーザーの Microsoft Windows セキュリティ アカウント下で実行されます。
次のレプリケーション エージェントのインスタンスは、実行可能ファイルを使用して実行できます。
レプリケーション エージェントを呼び出す際、パフォーマンス プロファイルを使用することで、あらかじめ定義された一連のパラメータを自動的にエージェント実行可能ファイルに渡すことができます。詳細については、「レプリケーション エージェント プロファイル」を参照してください。
例
次の例は、レプリケーション エージェントをコマンド プロンプトから呼び出す方法を示しています。レプリケーション エージェントは、レプリケーション管理オブジェクト (RMO) を使用して呼び出すこともできます。詳細については、「サブスクリプションの同期 (レプリケーション)」を参照してください。
注意 |
---|
これらの例では、読みやすくするために、改行が追加されています。バッチ ファイルの場合、コマンドは 1 行で入力する必要があります。 |
スナップショット エージェントの実行
次の例では、バッチ ファイルを使って、スナップショット エージェントをコマンド プロンプトから呼び出し、AdvWorksSalesOrdersMerge パブリケーションのスナップショットを生成しています。
REM -- Declare variables
SET Publisher=%InstanceName%
SET PublicationDB=AdventureWorks
SET Publication=AdvWorksSalesOrdersMerge
REM --Start the Snapshot Agent to generate the snapshot for AdvWorksSalesOrdersMerge.
"C:\Program Files\Microsoft SQL Server\100\COM\SNAPSHOT.EXE" -Publication %Publication%
-Publisher %Publisher% -Distributor %Publisher% -PublisherDB %PublicationDB%
-ReplicationType 2 -OutputVerboseLevel 1 -DistributorSecurityMode 1
ディストリビューション エージェントの実行
この例では、バッチ ファイルを使って、ディストリビューション エージェントをコマンド プロンプトから呼び出し、AdvWorksProductTran パブリケーションからの変更を、プッシュ サブスクライバに連続してレプリケートしています。
REM -- Declare the variables.
SET Publisher=%instancename%
SET Subscriber=%instancename%
SET PublicationDB=AdventureWorks
SET SubscriptionDB=AdventureWorksReplica
SET Publication=AdvWorksProductsTran
REM -- Start the Distribution Agent with four subscription streams.
REM -- The following command must be supplied without line breaks.
"C:\Program Files\Microsoft SQL Server\100\COM\DISTRIB.EXE" -Subscriber %Subscriber%
-SubscriberDB %SubscriptionDB% -SubscriberSecurityMode 1 -Publication %Publication%
-Publisher %Publisher% -PublisherDB %PublicationDB% -Distributor %Publisher%
-DistributorSecurityMode 1 -Continuous -SubscriptionType 0 -SubscriptionStreams 4
マージ エージェントの実行
この例では、バッチ ファイルを使って、マージ エージェントをコマンド プロンプトから呼び出し、AdvWorksSalesOrdersMerge パブリケーションにプル サブスクリプションを同期しています。
REM -- Declare the variables.
SET Publisher=%instancename%
SET Subscriber=%instancename%
SET PublicationDB=AdventureWorks
SET SubscriptionDB=AdventureWorksReplica
SET Publication=AdvWorksSalesOrdersMerge
REM --Start the Merge Agent with concurrent upload and download processes.
REM -- The following command must be supplied without line breaks.
"C:\Program Files\Microsoft SQL Server\100\COM\REPLMERG.EXE" -Publication %Publication%
-Publisher %Publisher% -Subscriber %Subscriber% -Distributor %Publisher%
-PublisherDB %PublicationDB% -SubscriberDB %SubscriptionDB% -PublisherSecurityMode 1
-OutputVerboseLevel 2 -SubscriberSecurityMode 1 -SubscriptionType 1 -DistributorSecurityMode 1
-Validate 3 -ParallelUploadDownload 1