我有一个拥有5个发行商的中央订阅服务器。复制后,我想得到最后一次同步的日期和进行同步的服务器。是否可以从SQL Server用于复制的现有表中找到此信息?
我使用类似的方法来检查上次复制时间。但是,这是在数据库级别上,而不是在表级别上。这是从发布者的分发数据库中运行的。
SELECT MAX(DISTINCT h.[time]) AS RunTime
FROM MSmerge_history h INNER JOIN
MSmerge_agents a ON a.id = h.agent_id
WHERE (a.publisher_db = 'PublishedDbName')
AND (h.runstatus <> 1)
AND Left(h.comments,2) = 'Up'
OR (a.publisher_db = 'PublishedDbName')
AND (h.runstatus <> 1)
AND Left(h.comments,2) = 'No'
OR (a.publisher_db = 'PublishedDbName')
AND (h.runstatus <> 1)
AND Left(h.comments,2) = 'Me'
And Publication Like 'PublictionName%'
GO