如何同步请求订阅(复制编程)

请求订阅可以通过从命令提示符下调用适当的复制代理可执行文件,以编程的方式按需进行同步。被调用的复制代理可执行文件将取决于请求订阅所属的发布的类型。

ms147343.note(zh-cn,SQL.90).gif注意:
复制代理使用通过命令提示符启动该代理的用户的 Windows 身份验证凭据连接到本地服务器。这些 Windows 凭据还在使用 Windows 集成身份验证连接到远程服务器时使用。

通过命令提示符或批处理文件启动分发代理

  1. 在命令提示符下或批处理文件中,通过运行 distrib.exe 并指定下列命令行参数来启动复制分发代理

    • -Publisher
    • -PublisherDB
    • -Distributor
    • -DistributorSecurityMode = 1
    • -Subscriber
    • -SubscriberDB
    • -SubscriberSecurityMode = 1
    • -SubscriptionType = 1

    如果您使用的是 SQL 身份验证,则还必须指定下列参数:

    • -DistributorLogin
    • -DistributorPassword
    • -DistributorSecurityMode = 0
    • -PublisherLogin
    • -PublisherPassword
    • -PublisherSecurityMode = 0
    • -SubscriberLogin
    • -SubscriberPassword
    • -SubscriberSecurityMode = 0

在命令提示符下或批处理文件中启动合并代理

  1. 在命令提示符下或批处理文件中,通过运行 replmerg.exe 并指定下列命令行参数来启动复制合并代理

    • -Publisher
    • -PublisherDB
    • -PublisherSecurityMode = 1
    • -Publication
    • -Distributor
    • -DistributorSecurityMode = 1
    • -Subscriber
    • -SubscriberSecurityMode = 1
    • -SubscriberDB
    • -SubscriptionType = 1

    如果您使用的是 SQL 身份验证,则还必须指定下列参数:

    • -DistributorLogin
    • -DistributorPassword
    • -DistributorSecurityMode = 0
    • -PublisherLogin
    • -PublisherPassword
    • -PublisherSecurityMode = 0
    • -SubscriberLogin
    • -SubscriberPassword
    • -SubscriberSecurityMode = 0

示例

以下示例启动分发代理以同步请求订阅。所有连接均使用 Windows 身份验证实现。

REM -- Declare the variables.
SET Publisher=%instancename%
SET Subscriber=%instancename%
SET PublicationDB=AdventureWorks
SET SubscriptionDB=AdventureWorksReplica 
SET Publication=AdvWorksProductsTran

REM -- Start the Distribution Agent.
REM -- The following command must be supplied without line breaks.
"C:\Program Files\Microsoft SQL Server\90\COM\DISTRIB.EXE" -Subscriber %Subscriber% 
-SubscriberDB %SubscriptionDB% -SubscriberSecurityMode 1 -Publication %Publication% 
-Publisher %Publisher% -PublisherDB %PublicationDB% -Distributor %Publisher% 
-DistributorSecurityMode 1 -Continuous -SubscriptionType 1

以下示例启动合并代理以同步请求订阅。所有连接均使用 Windows 身份验证实现。

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\90\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 

请参阅

任务

如何同步请求订阅(RMO 编程)

其他资源

如何同步请求订阅 (SQL Server Management Studio)
同步数据

帮助和信息

获取 SQL Server 2005 帮助