sp_replmonitorhelppublication (Transact-SQL)

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

主題連結圖示Transact-SQL 語法慣例

語法

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

引數

  • [@publisher = ] 'publisher'
    這是在監視其狀態的發行者名稱。publisher 是 sysname,預設值是 NULL。如果是 null,就會傳回所有使用散發者之發行者的資訊。

  • [@publisher_db = ] 'publisher_db'
    這是已發行的資料庫名稱。publisher_db 是 sysname,預設值是 NULL。如果是 NULL,就會傳回發行者端所有已發行資料庫的資訊。

  • [@publication = ] 'publication'
    這是正在監視的發行集名稱。publication 是 sysname,預設值是 NULL。

  • [@publication_type = ] publication_type
    這是發行集的類型。publication_type 是 int,它可以是下列值之一。

    描述

    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 = expiration – 並未在保留期限臨界值內同步處理交易式發行集的訂閱。

2 = latency - 將交易式發行者的資料複寫到訂閱者所花的時間超出臨界值 (以秒為單位)。

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

這是用來表示 retention 的單位。

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_replmonitorhelppublication 用來搭配使用所有類型的複寫。

權限

只有散發資料庫中的 db_ownerreplmonitor 固定資料庫角色成員,才能夠執行 sp_replmonitorhelppublication