2005年09月09日

マルチサーバージョブの自動化

1つのマスタサーバー(MSX)と1つ以上の対象サーバー(TSX)で構成
 
マスタサーバーはジョブを対象サーバーに自動配布、対象サーバーからイベントを受け取る
 
複数サーバーを論理的な事業単位にグループ化
 
複数サーバーを1か所から集中管理
 
マスタサーバーの定義
  対象サーバー上に配布するジョブの定義、スケジュール、管理
  Windows NT/2000 コンピュータ
  Enterprise Manager または sp_msx_enlist システムストアドプロシージャで定義
   
 
Enterprise Manager → SQL Server エージェントの右クリック → [マルチサーバーの管理] → [マスタサーバーの設定] → [マスタサーバー設定ウィザード]
 
 
定義済みマスタサーバー情報はマスターサーバーの msdb..systargetservers システムテーブルに格納
 
 
各対象サーバー用 SQL Server ログインアカウントおよびパスワードは自動作成、アカウントには _msx_probe という接尾語が付加
    マスタサーバーから対象サーバーへジョブをダウンロードできるように msdb データベースにアクセス
    このアカウントのパスワードを変更すると対象サーバーがマスタサーバーにアクセスできなくなる
      → 対象サーバーの再登録が必要
  ウィザードでマスタサーバーおよび全対象サーバーに MSXOperator を作成
  イベントの転送先サーバーとして構成
   
 
データベース作成機能を実行しない場合、イベントの管理負荷はデータベースアプリケーションパフォーマンスに影響なし
 
対象サーバーの定義
  Enterprise Manager または sp_msx_enlist システムストアドプロシージャで定義
   
 
Enterprise Manager → SQL Server エージェントの右クリック → [マルチサーバーの管理] → [対象サーバーの設定] → [対象サーバー設定ウィザード]
  定義済み対象サーバー情報は msdb..systargetservers システムテーブルに格納
  1つのマスタサーバーにのみ割り当て可
    現在のマスタサーバーから登録解除されるまで別マスタサーバーのメンバーに登録不可
  マスタサーバーと同一 Windows ドメインまたは信頼されている Windows ドメイン内にある必要あり
 
SQL Server 7.0 サーバーは SQL Server 2000 サーバーの名前付きインスタンスを処理不可
 
マルチサーバージョブ処理の手順
  1.
 
マスタサーバーが msdb..sysdownloadlist システムテーブルのダウンロードリストにある対象サーバーのためにジョブを通知
  2.
 
対象サーバーはマスタサーバーと定期的に接続、ダウンロードするためのジョブが通知されていることを確認、ジョブをダウンロード
  3. 対象サーバーはジョブ完了後、ジョブ結果ステータスをマスタサーバーにアップロード
  ジョブ内のパスおよび構文は全対象サーバー上で同一である必要あり
 
マスタサーバーにジョブ定義およびスケジュールのマスタコピーを格納
  対象サーバーでジョブ定義の変更不可 → マスタサーバーのみで実行可
  Enterprise Manager はダウンロードリストに必要な命令を自動通知
 
マスタサーバーは対象サーバーからのジョブ結果情報を msdb..sysjobservers システムテーブルに記録
  各対象サーバーのローカル msdb..sysjobhistory システムテーブルのジョブヒストリ情報
posted by w@ko at 18:46|  ・SQL Server ノート | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。