据将首先传输到订阅服务器
@article = N'all', --发布所订阅的项目
@update_mode = N'queued failover', --将订阅启用为排队更新订阅,并允许更改为立即更新模式
@subscriber_type = 0 --订阅服务器的类型:SQL Server订阅服务器
go
-- 添加新的预定分发代理作业,以使推送订阅与事务发布同步
-- http://msdn.microsoft.com/zh-cn/library/ms175006(v=SQL.100)
exec sys.sp_addpushsubscription_agent
@publication = N'tran_repl', --指定发布名称
@subscriber = N'KK', --订阅服务器
@subscriber_db = N'mytestA', --订阅数据库
@job_login = N'KK\SqlReplicator',
@job_password = N'123456',
@subscriber_security_mode = 1, --Windows 身份验证
@frequency_type = 64, --分发代理计划的频率:自动启动(默认)
@frequency_interval = 1,
@frequency_relative_interval = 1,
@frequency_recurrence_factor = 0,
@frequency_subday = 4,
@frequency_subday_interval = 5,
@active_start_time_of_day = 0,
@active_end_time_of_day = 235959,
@active_start_date = 0,
@active_end_date = 0,
@dts_package_location = N'Distributor'
go
/*【要在订阅服务器上运行的脚本】*/
use mytestA
-- 设置在连接到发布服务器时立即更新订阅的同步触发器所使用的配置和安全信息
-- http://msdn.microsoft.com/zh-cn/library/ms174991(v=sql.100).aspx
exec sys.sp_link_publication
@publisher = N'KK',
@publisher_db = N'mytest',
@publication = N'tran_repl',
@distributor = N'KK',
@security_mode = 1, --SQL Server 身份验证或 Windows 身份验证
@login = N'KK\SqlReplicator',
@password = N'123456'
go
【启动快照并初始化】
/**********************************【启动快照并初始化】**************************************/
-- 发布服务器发布数据
use [mytest]
-- 对其请求订阅中的新项目的订阅添加到发布中(在发布服务器的发布数据库中执行)
-- https://technet.microsoft.com/zh-cn/library/ms181680(v=sql.100).aspx
-- exec sys.sp_refreshsubscriptions @publication = N'tran_repl'
-- 将订阅标记为要重新初始化
-- https://msdn.microsoft.com/zh-cn/library/ms189469(v=sql.100).aspx
exec sys.sp_reinitsubscription
@publication = N'tran_repl',
@subscriber = N'KK',
@destination_db = N'mytestA',
@article = N'all'
go
-- 启动可为发布生成初始快照的快照代理作业(在发布服务器的发布数据库中执行)
-- http://msdn.microsoft.com/zh-cn/library/ms176026(v=sql.105).aspx
exec sys.sp_startpublication_snapshot @publication = N'tran_repl'
go
-- 为所有表项目编写自定义 sp_MSins、sp_MSupd 和 sp_MSdel 过程的脚本
-- https://msdn.microsoft.com/zh-cn/library/ms187946(SQL.100).aspx
--exec sys.sp_scriptpublicationcustomprocs 'tran_repl'
--go
-- 至此,完成发布订阅!!!~ 初始化完成!!~
?
?