sp_changelogreader_agent (Transact-SQL)

適用対象: SQL Server Azure SQL Managed Instance

ログ リーダー エージェントのセキュリティ プロパティを変更します。 このストアド プロシージャは、パブリッシャー側のパブリケーション データベースで実行されます。

重要

リモート ディストリビューターを使用してパブリッシャーを構成する場合、 @job_login@job_passwordを含むすべてのパラメーターに指定された値がプレーン テキストとしてディストリビューターに送信されます。 このストアド プロシージャを実行する前に、パブリッシャーとリモート ディストリビューターの間の接続を暗号化する必要があります。 詳細については、「接続を暗号化するために SQL Server データベース エンジンを構成する」を参照してください。

構文

sp_changelogreader_agent
    [ [ @job_login = ] N'job_login' ]
    [ , [ @job_password = ] N'job_password' ]
    [ , [ @publisher_security_mode = ] publisher_security_mode ]
    [ , [ @publisher_login = ] N'publisher_login' ]
    [ , [ @publisher_password = ] N'publisher_password' ]
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

引数

[ @job_login = ] N'job_login'

エージェントが実行されているアカウントのログイン。 @job_loginnvarchar(257) で、既定値は NULL です。 Azure SQL Managed Instance では、SQL Server アカウントを使用します。

Note

SQL Server 以外のパブリッシャーの場合、これは変更できません。

[ @job_password = ] N'job_password'

エージェントを実行するアカウントのパスワード。 @job_passwordsysname で、既定値は NULL です。

重要

可能であれば、実行時、ユーザーに対してセキュリティ資格情報の入力を要求します。 スクリプト ファイルに資格情報を格納する必要がある場合は、不正アクセスを防ぐために、ファイルを保護します。

[ @publisher_security_mode = ] publisher_security_mode

パブリッシャーに接続するときにエージェントによって使用されるセキュリティ モード。 @publisher_security_modesmallint で、既定値は NULL です。 次の値は、セキュリティ モードを定義します。

  • 0 は SQL Server 認証を指定します。
  • 1はWindows 認証を指定します。
  • 2 は、SQL Server 2022 (16.x) CU 6 以降の Microsoft Entra パスワード認証を指定します。
  • 3 は、SQL Server 2022 (16.x) CU 6 以降の Microsoft Entra 統合認証を指定します。
  • 4 は、SQL Server 2022 (16.x) CU 6 以降の Microsoft Entra トークン認証を指定します。

重要

可能な場合は、Windows 認証を使用します。

[ @publisher_login = ] N'publisher_login'

パブリッシャーに接続するときに使用されるログイン。 @publisher_loginsysname で、既定値は NULL です。 @publisher_security_mode0されている場合は、@publisher_loginを指定する必要があります。 @publisher_loginNULLされ、@publisher_security_mode1されている場合、@job_loginで指定された Windows アカウントがパブリッシャーに接続するときに使用されます。

[ @publisher_password = ] N'publisher_password'

パブリッシャーに接続するときに使用するパスワード。 @publisher_passwordsysname で、既定値は NULL です。

重要

空白のパスワードを使用しないでください。 強力なパスワードを使用してください。 可能であれば、実行時、ユーザーに対してセキュリティ資格情報の入力を要求します。 スクリプト ファイルに資格情報を格納する必要がある場合は、不正アクセスを防ぐために、ファイルを保護します。

[ @publisher = ] N'publisher'

パブリッシャーの名前。 @publishersysname で、既定値は NULL です。 このパラメーターは、SQL Server 以外のパブリッシャーでのみサポートされます。

リターン コードの値

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

解説

sp_changelogreader_agent はトランザクション レプリケーションで使用されます。

sp_changelogreader_agent は、ログ リーダー エージェントを実行する Windows アカウントを変更するために使用されます。 既存の Windows ログインのパスワードを変更することも、新しい Windows ログインとパスワードを指定することもできます。

エージェントのログインまたはパスワードを変更した後、変更を有効にするには、エージェントを停止して再起動する必要があります。

アクセス許可

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