sp_helpreplfailovermode (Transact-SQL)
適用対象: SQL Server
サブスクリプションの現在のフェールオーバー モードを表示します。 このストアド プロシージャは、任意のデータベース上のサブスクライバー側で実行されます。 フェールオーバー モードの詳細については、「 Updatable サブスクリプション - トランザクション レプリケーションの場合」を参照してください。
構文
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'
このサブスクライバーの更新に参加しているパブリッシャーの名前。 @publisher は sysname で、既定値はありません。 パブリッシャーは、発行用に既に構成されている必要があります。
[ @publisher_db = ] N'publisher_db'
パブリケーション データベースの名前。 @publisher_db は sysname で、既定値はありません。
[ @publication = ] N'publication'
このサブスクライバーの更新に参加しているパブリケーションの名前。 @publication は sysname で、既定値はありません。
[ @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 パラメーターであり、次のいずれかの値を指定できます。
値 | 説明 |
---|---|
immediate |
即時更新: サブスクライバーで行われた更新は、2 フェーズ コミット プロトコル (2PC) を使用してパブリッシャーに直ちに反映されます。 |
queued |
キュー更新。サブスクライバーでの更新は、キューに格納されます。 |
リターン コードの値
0
(成功) または 1
(失敗)。
解説
sp_helpreplfailovermode
は、障害が発生した場合に、サブスクリプションがフェールオーバーとしてキュー更新を使用して即時更新できるように有効になっているスナップショット レプリケーションまたはトランザクション レプリケーションで使用されます。
アクセス許可
sysadmin固定サーバー ロールまたはdb_owner固定データベース ロールのメンバーのみが、sp_helpreplfailovermode
を実行できます。