다음을 통해 공유


Replication Agent Executables Concepts

적용 대상: SQL Server Azure SQL Managed Instance

복제 에이전트는 다음과 같은 방법으로 프로그래밍 방식으로 제어할 수 있습니다.

  • Microsoft.SqlServer.Replication 네임스페이스의 관리되는 에이전트 프로그래밍 인터페이스를 사용합니다.

  • 제공된 매개 변수 집합을 사용하여 명령 프롬프트에서 에이전트 실행 파일을 호출합니다.

명령 프롬프트에서 복제 에이전트를 직접 호출하면 일괄 처리 파일의 명령줄 스크립팅에서 에이전트에 프로그래밍 방식으로 액세스할 수 있습니다. 명령 프롬프트에서 에이전트를 호출하면 에이전트를 호출하거나 일괄 처리 파일을 시작한 사용자의 Microsoft Windows 보안 계정으로 실행됩니다.

다음 복제 에이전트의 인스턴스는 실행 파일을 사용하여 실행할 수 있습니다.

복제 에이전트를 호출할 때 성능 프로필을 사용하여 정의된 매개 변수 집합을 에이전트 실행 파일에 자동으로 전달할 수 있습니다. 자세한 내용은 복제 에이전트 프로필을 참조하세요.

예제

다음 예에서는 명령 프롬프트에서 복제 에이전트를 호출하는 방법을 보여 줍니다. RMO(복제 관리 개체)를 사용하여 복제 에이전트를 호출할 수도 있습니다. 자세한 내용은 구독 동기화(복제)를 참조하세요.

참고 항목

이 예에서는 가독성을 높이기 위해 줄 바꿈이 추가되었지만 배치 파일에서 명령은 단일 행으로 작성해야 합니다.

스냅샷 에이전트 실행

이 예제 일괄 처리 파일은 명령 프롬프트에서 스냅샷 에이전트 호출하여 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 ;