2008-12-18 31 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

- 好運