2008-12-18 47 views

回答

2

您可以通过使用系统表msMerge_sessions看到很多关于合并会话信息的:

select * from msMerge_sessions 

根据您所需要的信息,使用其他可用的系统表在数据库中。

3

我创造了这样的观点由用户

select subscriber_name, max(start_time) as last_sync 
from msMerge_sessions inner join msMerge_agents 
    on msmerge_agents.id = msmerge_sessions.agent_id 
group by subscriber_name 

我叫视图“LASTSYNC”得到最后日期 - 然后我加入了这个观点是这样得到类似于复制监视器显示的表示。

SELECT  dbo.LastSync.id, dbo.LastSync.subscriber_name, dbo.LastSync.creation_date, dbo.LastSync.last_sync, 
        distribution.dbo.MSmerge_sessions.estimated_upload_changes + distribution.dbo.MSmerge_sessions.estimated_download_changes AS estimate_rows, 
        distribution.dbo.MSmerge_sessions.upload_inserts + distribution.dbo.MSmerge_sessions.upload_updates + distribution.dbo.MSmerge_sessions.upload_deletes + distribution.dbo.MSmerge_sessions.download_inserts 
        + distribution.dbo.MSmerge_sessions.download_updates + distribution.dbo.MSmerge_sessions.download_deletes AS actual_rows, 
        distribution.dbo.MSmerge_sessions.duration AS total_seconds, distribution.dbo.MSmerge_sessions.percent_complete, 
        distribution.dbo.MSmerge_sessions.delivery_rate, CASE (runstatus) 
        WHEN 1 THEN 'Start' WHEN 2 THEN 'Succeed' WHEN 3 THEN 'In Progress' WHEN 4 THEN 'Idle' WHEN 5 THEN 'Retry' WHEN 6 THEN 'Fail' END AS Status 
FROM   distribution.dbo.MSmerge_sessions INNER JOIN 
        dbo.LastSync ON dbo.LastSync.id = distribution.dbo.MSmerge_sessions.agent_id AND distribution.dbo.MSmerge_sessions.start_time = dbo.LastSync.last_sync 
+0

“分配” =对于那些希望想知道,以取代变量你自己的分布数据库。否则好的一个。 – rjarmstrong 2013-02-19 09:27:05

0

对于接听的号码3

大的努力,但里有一些修改在视图能力运行查询

----创建视图LASTSYNC如下

Create View LastSync As 
select subscriber_name, max(start_time) as last_sync, ID, creation_date 
from msMerge_sessions inner join msMerge_agents 
    on msmerge_agents.id = msmerge_sessions.agent_id 
group by subscriber_name, ID, creation_date 
Go 

- ---在查询下运行

SELECT dbo.LastSync.id,dbo.LastSync.subscriber_name, dbo.LastSync.creation_date,dbo.LastSync.last_sync, distribution.dbo.MSmerge_sessions.estimated_upload_changes + distribution.dbo.MSmerge_sessions.estimated_download_changes AS ESTIMATE_ROWS,分布。 dbo.MSmerge_sessions.upload_inserts + distribution.dbo.MSmerge_sessions.upload_updates + distribution.dbo.MSmerge_sessions.upload_deletes + distribution.dbo.MSmerge_sessions.download_inserts + distribution.dbo.MSmerge_sessions.download_updates + distribution.dbo.MSmerge_sessions.download_deletes AS actual_rows, distribution.dbo.MSmerge_sessions.duration AS total_seconds, distribution.dbo.MSmerge_sessions.per当运行''成功'时3'正在进行中' 当4然后'空闲'当5然后'重试'当6时'开始'当时2'成功'当3当'正在进行' THEN '失败' END AS 状态从distribution.dbo.MSmerge_sessions INNER JOIN dbo.LastSync ON dbo.LastSync.id = distribution.dbo.MSmerge_sessions.agent_id AND distribution.dbo.MSmerge_sessions.start_time = dbo.LastSync.last_sync

- 好运