sp_replmonitorhelppublication (Transact-SQL)

適用対象: SQL ServerAzure SQL Managed Instance

パブリッシャー側の 1 つ以上のパブリケーションに関する現在の状態情報を返します。 レプリケーションの監視に使用されるこのストアド プロシージャは、ディストリビューション データベースのディストリビューターで実行されます。

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 であり、これらの値のいずれかになります。

説明
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 パブリケーションに属するサブスクリプションによって生成される最大しきい値警告。これらの値の 1 つ以上の論理 OR 結果を指定できます。

1 = 有効期限 - トランザクション パブリケーションへのサブスクリプションが、保持期間内のしきい値内で同期されていません。

2 = 待機時間 : トランザクション パブリッシャーからサブスクライバーにデータをレプリケートするためにかかった時間が、しきい値 (秒単位) を超えています。

4 = mergeexpiration - マージ パブリケーションのサブスクリプションが、保持期間内のしきい値内で同期されていません。

8 = mergefastrunduration - 高速ネットワーク接続で、マージ サブスクリプションの同期が完了するまでにかかった時間がしきい値 (秒単位) を超えています。

16 = mergeslowrunduration - マージ サブスクリプションの同期の完了にかかった時間が、低速ネットワーク接続のしきい値 (秒単位) を超えています。

32= mergefastrunspeed - マージ サブスクリプションの同期中の行の配信速度が、高速ネットワーク接続を介してしきい値レート (1 秒あたりの行数) をメインに失敗しました。

64= mergeslowrunspeed - マージ サブスクリプションの同期中の行の配信速度が、低速なネットワーク接続を介してしきい値レート (1 秒あたりの行数) をメインに維持できませんでした。
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できます。