sp_get_redirected_publisher (Transact-SQL)

適用対象:SQL Server

レプリケーション エージェントがディストリビューターのクエリを実行して、元のパブリッシャーがリダイレクトされたかどうかを判断するために使用されます。

Transact-SQL 構文表記規則

構文

sp_get_redirected_publisher
    [ @original_publisher = ] N'original_publisher'
    , [ @publisher_db = ] N'publisher_db'
    [ , [ @bypass_publisher_validation = ] bypass_publisher_validation ]
    [ , [ @multi_subnet_failover = ] multi_subnet_failover ]
[ ; ]

引数

[ @original_publisher = ] N'original_publisher'

最初にデータベースを発行した SQL Server のインスタンスの名前。 @original_publisherは sysname で、既定値はありません。

[ @publisher_db = ] N'publisher_db'

パブリッシュされるデータベースの名前。 @publisher_dbは sysname で、既定値はありません。

[ @bypass_publisher_validation = ] bypass_publisher_validation

リダイレクトされたパブリッシャーの検証を省略するために使用されます。 の場合 0、検証が実行されます。 の場合 1、検証は実行されません。 @bypass_publisher_validationはビットで、既定値は 0.

[ @multi_subnet_failover = ] multi_subnet_failover

適用対象: SQL Server 2022 (16.x) CU 10 以降のバージョン

動的リンク サーバーの作成に関する情報を渡すために使用されます。 この場合 0、動的リンク サーバーはパラメーターを使用して MultiSubnetFailover 作成されません。 の場合1は、動的リンク サーバーがパラメーター1としてMultiSubnetFailover作成されます。 @multi_subnet_failoverはビットで、既定値は 0.

リターン コードの値

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

結果セット

列名 データ型 説明
redirected_publisher sysname リダイレクト後のパブリッシャーの名前。
error_number int 検証エラーのエラー番号。
error_severity int 検証エラーの重大度。
error_message nvarchar (4000) 検証エラー メッセージのテキスト。

解説

redirected_publisher は現在の発行元名を返します。 NULLパブリッシャーデータベースと発行データベースがリダイレクトsp_redirect_publisherされない場合に返します。

検証が要求されていない場合、またはパブリッシャーと発行データベースのエントリが存在しない場合は、 error_numbererror_severity 戻り 0 値と error_message 戻り値を返します NULL

検証が要求されると、検証ストアド プロシージャ sp_validate_redirected_publisher (Transact-SQL) が呼び出され、リダイレクトのターゲットが発行データベースに適したホストであることを確認します。 検証が成功した場合は、sp_get_redirected_publisherリダイレクトされた発行元名、列、 0error_numberおよびerror_severityNULL列をerror_message返します。

検証が要求され、失敗した場合は、リダイレクトされた発行元名がエラー情報と共に返されます。

アクセス許可

呼び出し元は、sysadmin 固定サーバー ロールのメンバー、ディストリビューション データベースのdb_owner固定データベース ロール、またはパブリッシャー データベースに関連付けられている定義済みのパブリケーションのパブリケーション アクセス リストのメンバーである必要があります。