sp_replmonitorhelppublication (Transact-SQL)

適用於:SQL ServerAzure SQL 受控執行個體

傳回發行者端一或多個發行集的目前狀態資訊。 這個用來監視複寫的預存程式會在散發資料庫的散發者端執行。

Transact-SQL 語法慣例

語法

sp_replmonitorhelppublication
    [ [ @publisher = ] N'publisher' ]
    [ , [ @publisher_db = ] N'publisher_db' ]
    [ , [ @publication = ] N'publication' ]
    [ , [ @publication_type = ] publication_type ]
    [ , [ @refreshpolicy = ] refreshpolicy ]
[ ; ]

引數

[ @publisher = ] N'publisher'

正在監視其狀態的發行者名稱。 @publisher為 sysname,預設值為 NULL。 如果 NULL為 ,則會傳回所有使用散發者之發行者的資訊。

[ @publisher_db = ] N'publisher_db'

已發佈資料庫的名稱。 @publisher_db為 sysname,預設值為 NULL。 如果 NULL為 ,則會傳回發行者端所有已發行資料庫的資訊。

[ @publication = ] N'publication'

要監視的發行集名稱。 @publication為 sysname,預設值為 NULL

[ @publication_type = ] publication_type

發行集的類型。 @publication_type為 int,而且可以是下列其中一個值。

Description
0 交易式發行集。
1 快照式發行集。
2 合併式發行集。
NULL (預設值) 複寫嘗試判斷發行集類型。

[ @refreshpolicy = ] refreshpolicy

僅供參考之用。 不支援。 我們無法保證未來的相容性。

結果集

資料行名稱 資料類型 描述
publisher_db sysname 發行者的名稱。
publication sysname 發行集的名稱。
publication_type int 發行集的類型,可以是下列其中一個值。

0 = 交易式發行集

1 = 快照式發行集

2 = 合併式發行集
status int 與發行集相關聯的所有復寫代理程序狀態上限,而且可以是下列其中一個值。

1 = 已啟動

2 = 成功

3 = 進行中

4 = 閑置

5 = 重試

6 = 失敗
warning int 屬於發行集的訂閱所產生的臨界值警告上限,而且可以是其中一或多個值的邏輯 OR 結果。

1 = 到期 - 交易式發行集的訂閱尚未在保留期間閾值內同步處理。

2 = 延遲 - 將數據從交易式發行者複寫到訂閱者所花費的時間超過臨界值,以秒為單位。

4 = mergeexpiration - 合併式發行集的訂閱尚未在保留期間閾值內同步處理。

8 = mergefastrunduration - 完成合併訂閱同步處理所花費的時間超過透過快速網路連線的臨界值。

16 = mergeslowrunduration - 完成合併訂閱同步處理所花費的時間超過速度緩慢的網路連線,以秒為單位。

32 = mergefastrunspeed - 合併訂閱同步處理期間數據列的傳遞速率無法透過快速網路連線維持每秒數據列的閾值速率。

64 = mergeslowrunspeed - 合併訂閱同步處理期間數據列的傳遞速率無法透過緩慢的網路連線維持每秒數據列的臨界值速率。
worst_latency int 記錄讀取器或交易式發行集 散發代理程式 所傳播的數據變更,以秒為單位的最高延遲。
best_latency int 記錄讀取器或交易式發行集 散發代理程式 傳播的數據變更,以秒為單位的最低延遲。
average_latency int 記錄讀取器或交易式發行集 散發代理程式 所傳播之數據變更的平均延遲,以秒為單位。
last_distsync datetime 散發代理程式 執行的最後一個日期時間。
retention int 發行集的保留期間。
latencythreshold int 交易式發行集所設定的延遲閾值。
expirationthreshold int 如果是合併式發行集,則為發行集設定的到期閾值。
agentnotrunningthreshold int 為代理程式設定的時間最長的臨界值,無法執行。
subscriptioncount int 發行集的訂閱數目。
runningdistagentcount int 針對發行集執行的散發代理程式數目
snapshot_agentname sysname 發行集 快照集代理程式 作業的名稱。
logreader_agentname sysname 交易式發行集的記錄讀取器代理程式作業名稱。
qreader_agentname sysname 支援佇列更新之交易式發行集的佇列讀取器代理程序作業名稱。
worst_runspeedPerf int 合併式發行集最長的同步處理時間。
best_runspeedPerf int 合併式發行集的最短同步處理時間。
average_runspeedPerf int 合併式發行集的平均同步處理時間。
retention_period_unit int 用來表示 保留的單位。
publisher sysname 發行發行集之 SQL Server 實例的名稱。

傳回碼值

0 (成功)或 1 (失敗)。

備註

sp_replmonitorhelppublication 會與所有類型的復寫搭配使用。

權限

只有散發資料庫上db_owner或 replmonitor 固定資料庫角色的成員才能執行 sp_replmonitorhelppublication