Make a Master Server

適用対象:SQL Server

重要

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

このトピックでは、SQL Server Management Studio または Transact-SQL を使用して、マスター サーバー SQL Server を作成する方法について説明します。

はじめに

セキュリティ

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

  • マスター サーバー レジストリのサブキー \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. [マスター サーバー オペレーター] ページで、マスター サーバーのオペレーターを設定します。電子メールまたはポケットベルを使用してオペレーターに通知を送信するには、電子メールが送信されるように SQL Server エージェントを設定しておく必要があります。 net sendを使用してオペレーターに通知を送信するには、SQL Server エージェントが置かれているサーバーで Messenger サービスが実行されている必要があります。

    [電子メール アドレス]
    オペレーターの電子メール アドレスを設定します。

    [ポケットベル アドレス]
    オペレーターのポケットベル メール アドレスを設定します。

    [Net Send アドレス]
    オペレーターの net send アドレスを設定します。

  4. [ターゲット サーバー] ページで、マスター サーバーのターゲット サーバーを選択します。

    [登録済みサーバー]
    Microsoft SQL Server Management Studio に登録されているサーバーで、まだターゲット サーバーになっていないものを一覧表示します。

    [ターゲット サーバー]
    ターゲット サーバーであるサーバーを一覧表示します。

    >
    選択したサーバーをターゲット サーバーの一覧に移動します。

    >>
    すべてのサーバーをターゲット サーバーの一覧に移動します。

    <
    選択したサーバーをターゲット サーバーの一覧から削除します。

    <<
    すべてのサーバーをターゲット サーバーの一覧から削除します。

    [接続の追加]
    サーバーを登録せずにターゲット サーバーの一覧に追加します。

    接続
    選択したサーバーの接続プロパティを変更します。

  5. [マスター サーバー ログインの資格情報] ページで、必要に応じてターゲット サーバーの新しいログインを作成してマスター サーバーへの権利を割り当てるかどうかを指定します。

    [必要に応じて新しいログインを作成し、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)」を参照してください。

参照