レプリケーション エージェント実行可能ファイルの概念
適用対象: SQL ServerAzure SQL Managed Instance
レプリケーション エージェントは、次のような方法でプログラムから制御できます。
Microsoft.SqlServer.Replication 名前空間のマネージド エージェント プログラミング インターフェイスを使用する。
エージェントの実行可能ファイルを一連のパラメーターを指定してコマンド プロンプトから呼び出す。
レプリケーション エージェントはコマンド プロンプトから直接呼び出すことができるため、コマンド ライン スクリプトをバッチ ファイル化することで、プログラムからエージェントにアクセスできます。 エージェントをコマンド プロンプトから呼び出した場合、そのエージェントは、エージェントを呼び出したユーザーまたはバッチ ファイルを実行したユーザーの Microsoft Windows セキュリティ アカウント下で実行されます。
次のレプリケーション エージェントのインスタンスは、実行可能ファイルを使用して実行できます。
レプリケーション エージェントを呼び出す際、パフォーマンス プロファイルを使用することで、あらかじめ定義された一連のパラメーターを自動的にエージェント実行可能ファイルに渡すことができます。 詳しくは、「 レプリケーション エージェント プロファイル」をご覧ください。
例
次の例は、レプリケーション エージェントをコマンド プロンプトから呼び出す方法を示しています。 レプリケーション エージェントは、レプリケーション管理オブジェクト (RMO) を使用して呼び出すこともできます。 詳細については、「 サブスクリプションの同期 (レプリケーション)」を参照してください。
注意
これらの例では、読みやすくするために、改行が追加されています。 バッチ ファイルの場合、コマンドは 1 行で入力する必要があります。
スナップショット エージェントの実行
次の例では、バッチ ファイルを使って、スナップショット エージェントをコマンド プロンプトから呼び出し、AdvWorksSalesOrdersMerge パブリケーションのスナップショットを生成しています。 (以下のスクリプトでは、SQL Server 2016 (13.x) ファイル (バージョン 130) へのパスを使用しています)。 スクリプトを調整し、使用しているバージョンの SQL Server のファイルを指すようにする必要があります。)
REM -- Declare variables
SET Publisher=%InstanceName%;
SET PublicationDB=AdventureWorks2022;
SET Publication=AdvWorksSalesOrdersMerge;
REM --Start the Snapshot Agent to generate the snapshot for AdvWorksSalesOrdersMerge.
"C:\Program Files\Microsoft SQL Server\130\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=AdventureWorks2022;
SET SubscriptionDB=AdventureWorks2022Replica;
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\130\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=AdventureWorks2022;
SET SubscriptionDB=AdventureWorks2022Replica;
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\130\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 ;
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示