SQL Server エージェントを使用して SSIS パッケージ実行を自動化する方法 (SQL Server ビデオ)

適用対象 : Microsoft SQL Server Integration Services

作成者 : カルラ サボータ、Microsoft Corporation

再生時間 : 00:10:11

サイズ : 8.22 MB

種類 : WMV ファイル

このビデオを見る

関連ヘルプ トピック :

パッケージを実行する方法

SQL Server エージェントのジョブを作成する方法 (Transact-SQL)

プロキシを変更する方法 (SQL Server Management Studio)

SQL Server エージェント プロキシを作成する方法 (Transact-SQL)

SQL Server エージェントのプロキシを変更する方法 (Transact-SQL)

資格情報を作成する方法 (SQL Server Management Studio)

ジョブのスケジュールを設定する方法 (SQL Server Management Studio)

dtexec ユーティリティ

Integration Services サービス

プログラムによるリモート パッケージの読み込みと実行

その他のビデオ :

トラブルシューティング : SQL Server エージェントを使用した SSIS パッケージ実行 (SQL Server ビデオ)

サンプル :

dtexecRemote

ビデオの概要

このビデオでは、次の内容について説明します。

  • Integration Services パッケージを SQL Server エージェントのジョブ ステップとして実行するプロキシ アカウントを作成する方法
  • ジョブとジョブ ステップを作成する方法
  • ジョブの実行をスケジュールする方法

ビデオの内容

ビデオのタイムスタンプ 音声

00:00

こんにちは。カルラ サボータです。Microsoft SQL Server Integration Services 製品のドキュメント作成を担当しています。

このビデオでは、SQL Server エージェントを構成して、SQL Server Integration Services パッケージの実行を自動化する方法を説明します。

学習するのは、SQL Server エージェントのジョブ ステップとしてパッケージを実行するプロキシ アカウントを作成する方法、ジョブとジョブ ステップを作成する方法、およびジョブの実行スケジュールを作成する方法です。

パッケージを実行できるように SQL Server エージェントを構成するための最初のステップは、SQL Server Management Studio を開いて SQL Server データベース エンジンに接続することです。

パッケージをジョブ ステップとして実行するアカウントには、パッケージを直接実行するアカウントと同じ権限がすべて必要です。これらの権限が揃うことで、パッケージがアクセスする必要のあるすべての外部リソースにアクセスできるようになります。権限が不足していると、ジョブは実行されません。

パッケージをジョブ ステップとして実行するために、既存の SQL Server エージェント サービス アカウントを使用することも、SQL Server エージェント プロキシ アカウントを作成することもできます。

このデモでは、プロキシ アカウントを作成します。

01:13

プロキシ アカウントを作成するには、sysadmin 固定サーバー ロールのメンバである必要があります。あるいは、msdb データベースの SQLAgentOperatorRole、SQLAgentReaderRole、または SQLAgentUserRole のメンバである必要があります。

プロキシ アカウントを作成するには、Transact-SQL クエリを実行するか、SQL Server Management Studio の [新しいプロキシ アカウント (New Proxy Account)] ダイアログ ボックスを使用します。ここでは、[新しいプロキシ アカウント (New Proxy Account)] ダイアログ ボックスを使用します。

[全般 (General)] ページで、新しいプロキシ アカウントの名前と資格情報を指定します。アカウントの名前を「Package proxy」とし、User1 という既存の資格情報を選択します。これには認証情報が格納されています。

ここで選択した資格情報を使用することで、パッケージを作成したアカウントまたは必要な権限を持つアカウントとして SQL Server エージェントがジョブを実行できる必要があります。

また、プロキシを有効にする対象のサブシステムも指定する必要があります。ここに一覧表示されている各サブシステムは、ジョブ ステップの種類を表しています。

今回はジョブ ステップを構成する際に [SQL Server Integration Services パッケージ (SQL Server Integration Services Package)] という種類を選択するので、プロキシ アカウントに対しても [SQL Server Integration Services パッケージ (SQL Server Integration Services Package)] サブシステムを選択します。

プロキシの説明はオプションです。

[プリンシパル (Principals)] ページでは、プロキシ アカウントへのアクセスを許可するロールの追加や削除を行えます。sysadmin 固定サーバー ロールのメンバには、自動的にアクセスが許可されます。

プロキシ アカウント用に指定した User1 資格情報は、オブジェクト エクスプローラの [資格情報 (Credentials)] ノードの下に表示されます。

03:27

Transact-SQL クエリを実行するか、[新しい資格情報 (New Credentials)] ダイアログ ボックスを使用すると、新しい資格情報を作成できます。

これでプロキシ アカウントの作成が終わったので、ジョブを作成し、パッケージ実行のステップを追加する準備ができました。複数のパッケージを実行するには、パッケージごとに 1 つのステップを作成します。

ジョブを作成するには、あらかじめ SQL Server エージェント サービスを実行しておく必要があります。オブジェクト エクスプローラのツリーで、SQL Server エージェントの隣にこのアイコンが表示された場合は、サービスが無効になっています。その場合は、SQL Server エージェント ノードを右クリックして、サービスを再起動します。

04:17

ストアド プロシージャを呼び出すか、[新しいジョブ (New Job)] ダイアログ ボックスを使用して、ジョブとジョブ ステップを作成します。ここでは、[新しいジョブ (New Job)] ダイアログ ボックスを使用します。

まず、ダイアログ ボックスの [全般 (General)] ページで、ジョブのプロパティを構成します。ジョブの名前を指定し、所有者とカテゴリの設定が正しいかどうかを確認する必要があります。必要に応じて、ジョブの説明を入力することもできます。

ここでは、ジョブの名前を「Integration Services Package」とし、他の既定の設定はそのまま使用します。このジョブをスケジュールできるように、[有効 (Enabled)] チェック ボックスをオンにします。

05:01

次に、[ステップ (Steps)] ページでジョブ ステップを追加し、プロパティを構成します。

ジョブ ステップの名前を「Basic package」とします。パッケージの実行には、システムによって自動的に起動されるバージョンの dtexec ユーティリティを使用するので、[SQL Server Integration Services パッケージ (SQL Server Integration Services Package)] という種類を選択します。

ジョブが実行されると、コンピュータのプロセッサと、コンピュータ上で実行されている SQL Server および SQL Server エージェントのバージョンに基づいて、ユーティリティの 32 ビット バージョンまたは 64 ビット バージョンが自動的に起動されます。

このデモでは、32 ビット コンピュータ上で、32 ビット バージョンの SQL Server エージェントと SQL Server が実行されています。このため、ユーティリティの 32 ビット バージョンが起動されます。

64 ビット バージョンの SQL Server および SQL Server エージェントがインストールされている 64 ビット コンピュータで、ユーティリティの 32 ビット バージョンを起動することもできます。その場合は、[実行オプション (Execution options)] タブで、[32 ビット ランタイムを使用する (Use 32 bit runtime)] オプションを選択します。これは、SQL Server 2008 の新しい機能です。

[実行するアカウント名 (Run as)] ボックスの一覧で、先ほど作成したプロキシ アカウントを選択します。これは、SQL Server エージェントのジョブ ステップとしてパッケージを実行するアカウントです。

次に、[全般 (General)] タブで、パッケージ ソースとして、[SQL Server]、[SSIS パッケージ ストア (SSIS Package Store)]、[ファイル システム (File System)] のいずれかを選択します。このデモでは、パッケージはファイル システムに格納されています。

06:54

ジョブ ステップに対してコマンド ライン オプションを指定することもできます。構成ファイルの追加、データ ソース接続文字列の更新、ログ プロバイダの追加などを行えます。

パッケージの接続マネージャを使用して SQL Server データベースにイベントのログ エントリを書き込めるように、ログ プロバイダを追加します。DestinationConnectionOLEDB は、AdventureWorks2008 SQL Server データベースに接続する接続マネージャです。

07:38

SQL Server エージェントのジョブを作成してジョブ ステップを追加したので、ジョブをスケジュールする準備ができました。既存のスケジュールを選択することも、新しいスケジュールを作成することもできます。

スケジュール名を入力し、ジョブをいつどのような頻度で実行するかを指定する必要があります。スケジュールの名前を「Integration Services Package Schedule」とし、ジョブが今月末まで毎日午後 5 時に実行されるように構成します。

スケジュールを有効にするには、必ず [有効 (Enabled)] チェック ボックスをオンにします。

これで、設定したスケジュールで、ジョブ実行用に作成したプロキシ アカウントを使用して、自動的にパッケージが実行されるようになります。

08:59

スケジュールで設定されているタイム フレームとは別に、任意のタイミングでジョブを実行することもできます。ここで一度やってみましょう。作成したジョブにはジョブ ステップが 1 つしかないため、ジョブは直ちに開始されます。ジョブに複数のジョブ ステップが含まれている場合には、どのステップからジョブを開始するのかを選択する必要があります。

ご覧のように、このジョブでは正常にパッケージが実行されました。

SQL Server エージェントを使用すると、このデモで行ったように、ローカル マシンに格納されているパッケージを実行することも、別のマシンに格納されているパッケージを実行することもできます。パッケージがどこに格納されていても、実行されるコンピュータは、そのパッケージを呼び出した SQL Server エージェントと同じコンピュータです。

このビデオでは、SQL Server エージェントのジョブ ステップとしてパッケージを実行するプロキシ アカウントを作成する方法、ジョブとジョブ ステップを作成する方法、およびジョブの実行スケジュールを作成する方法を説明しました。

ご覧くださいましてありがとうございました。このビデオが皆様のお役に立ちましたら幸いです。Web サイトには Microsoft SQL Server に関する他のビデオもありますので、併せてご覧ください。