次の方法で共有


sp_helpreplfailovermode (Transact-SQL)

適用対象: SQL サーバー

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

Transact-SQL 構文表記規則

構文

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 OUTPUT

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

[ @failover_mode = ] N'failover_mode' OUTPUT

サブスクライバーでデータ変更が行われるモードを返します。 @failover_mode は、 nvarchar(10) 型の OUTPUT パラメーターであり、次のいずれかの値を指定できます。

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

リターン コードの値

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

解説

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

アクセス許可

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