ターゲット サーバーの作成

適用対象 SQL Server

重要

現在、Azure SQL Managed Instance によって、すべてではありませんが、ほとんどの SQL Server エージェントの機能がサポートされています。 詳細については、Azure SQL Managed Instance と SQL Server の T-SQL の相違点に関するページを参照してください。

このトピックでは、SQL Server で、SQL Server Management Studio、Transact-SQL、または SQL Server 管理オブジェクト (SMO) を使用して、ターゲット サーバーを作成する方法について説明します。

はじめに

セキュリティ

プロキシに関連付けられているステップがある分散ジョブは、ターゲット サーバーのプロキシ アカウントのコンテキストで実行されます。 次の条件を満たしていることを確認してください。満たしていないと、プロキシに関連付けられているジョブ ステップがマスター サーバーから対象サーバーにダウンロードされません。

  • マスター サーバー レジストリのサブキー \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<*instance_name*>\SQL Server Agent\AllowDownloadedJobsToMatchProxyName (REG_DWORD) が 1 (True) に設定されていること。 既定では、この値は 0 (false) に設定されます。

  • ジョブ ステップを実行するマスター サーバー プロキシ アカウントと同じ名前を持つターゲット サーバーにプロキシ アカウントが存在すること。

マスター サーバーからターゲット サーバーにプロキシ アカウントをダウンロード中に、これらのアカウントを使用するジョブ ステップが失敗した場合は、msdb データベースの sysdownloadlist テーブルの error_message 列を参照して、以下のエラー メッセージの有無を確認します。

  • "ジョブ ステップではプロキシ アカウントが必要ですが、ターゲット サーバーで一致するプロキシが無効です。"

    このエラーを解決するには、 AllowDownloadedJobsToMatchProxyName レジストリ サブキーを 1 に設定します。

  • "プロキシ アカウントが見つかりませんでした。"

    このエラーを解決するには、ターゲット サーバー上にプロキシ アカウントが存在し、ジョブ ステップを実行するマスター サーバー プロキシ アカウントと同じ名前が付けられているかどうかを確認します。

アクセス許可

このプロシージャの実行権限は、既定では sysadmin 固定サーバー ロールのメンバーに与えられています。

SQL Server Management Studio を使用する

ターゲット サーバーを作成するには

  1. オブジェクト エクスプローラーで、Microsoft SQL Server データベース エンジンのインスタンスに接続し、そのインスタンスを展開します。

  2. [SQL Server エージェント]を右クリックし、 [マルチ サーバーの管理]をポイントして、 [対象サーバーに設定]をクリックします。 ターゲット サーバー設定ウィザードを使用して、ターゲット サーバーを設定します。

  3. [マスター サーバーの選択] ページで、このターゲット サーバーが受け取るジョブの送信元のマスター サーバーを選択します。

    [サーバーの選択]
    マスター サーバーに接続します。

    [このサーバーの説明]
    このターゲット サーバーの説明を入力します。 この説明はターゲット サーバーからマスター サーバーにアップロードされます。

  4. [マスター サーバー ログインの資格情報] ページで、必要に応じてターゲット サーバーに新しいログインを作成します。

    [必要に応じて新しいログインを作成し、MSX へのアクセス権を割り当てる]
    指定されたログインが存在しない場合に、新しいログインをターゲット サーバーに作成します。

Transact-SQL の使用

ターゲット サーバーを作成するには

  1. データベース エンジンに接続します。

  2. [標準] ツール バーの [新しいクエリ] をクリックします。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。 この例では、現在のサーバーを AdventureWorks1 マスター サーバーに追加します。 現在のサーバーの場所は、Building 21 の Room 309 の Rack 5 です。

    USE msdb ;  
    GO  
    
    EXEC dbo.sp_msx_enlist N'AdventureWorks1',   
        N'Building 21, Room 309, Rack 5' ;   
    GO
    

    詳細については、「 sp_msx_enlist (Transact-SQL)」を参照してください。

参照

エンタープライズ全体の管理の自動化