sys.sp_helpreplfailovermode(Transact-SQL)

適用対象:SQL Server

サブスクリプションの現在のフェールオーバー モードを表示します。 このストアド プロシージャは、任意のデータベース上のサブスクライバー側で実行されます。 フェールオーバー モードの詳細については、「 Updatable サブスクリプション - トランザクション レプリケーションの場合」を参照してください。

Transact-SQL 構文表記規則

構文

sys.sp_helpreplfailovermode
    [ @publisher = ] N'publisher'
    , [ @publisher_db = ] N'publisher_db'
    , [ @publication = ] N'publication'
    [ , [ @failover_mode_id = ] failover_mode_id OUTPUT ]
    [ , [ @failover_mode = ] N'failover_mode' OUTPUT ]
[ ; ]

引数

[ @publisher = ] N'publisher'

このサブスクライバーの更新に参加しているパブリッシャーの名前。 @publishersysname で、既定値はありません。 パブリッシャーは、発行用に既に構成されている必要があります。

[ @publisher_db = ] N'publisher_db

パブリケーション データベースの名前。 @publisher_dbsysname で、既定値はありません。

[ @publication = ] N'publication'

このサブスクライバーの更新に参加しているパブリケーションの名前。 @publicationsysname で、既定値はありません。

[ @failover_mode_id = ] failover_mode_id 出力

フェールオーバー モードの整数値を返します。 @failover_mode_idtinyint 型の OUTPUT パラメータです。 即時更新用の 0 を返し、キュー更新の 1 します。

[ @failover_mode = ] N'failover_mode' 出力

サブスクライバーでデータ変更が行われるモードを返します。 @failover_modenvarchar(10)型のOUTPUTパラメータであり、以下のいずれかの値となります。

説明
immediate 即時更新: サブスクライバーで行われた更新は、2 フェーズ コミット プロトコル (2PC) を使用してパブリッシャーに直ちに反映されます。
queued キュー更新。サブスクライバーでの更新は、キューに格納されます。

リターン コードの値

0 (成功) または 1 (失敗)。

解説

sp_helpreplfailovermode は、障害が発生した場合に、サブスクリプションがフェールオーバーとしてキュー更新を使用して即時更新できるように有効になっているスナップショット レプリケーションまたはトランザクション レプリケーションで使用されます。

アクセス許可

sysadmin固定サーバー ロールまたはdb_owner固定データベース ロールのメンバーのみが、sp_helpreplfailovermodeを実行できます。