次の方法で共有


ジョブ転送タスク

適用対象: SQL Server Azure Data Factory の SSIS 統合ランタイム

ジョブ転送タスクは、 SQL Server のインスタンス間で 1 つ以上の SQL Serverエージェント ジョブを転送します。

ジョブ転送タスクは、すべてのジョブまたは指定したジョブのみを転送するように構成できます。 また、転送先で転送したジョブを有効にするかどうかも指定できます。

転送しようとするジョブが既に転送先に存在している場合もあります。 ジョブ転送タスクでは、既存のジョブの処理を次のように構成できます。

  • 既存のジョブを上書きします。

  • 重複するジョブが存在する場合、タスクを失敗させます。

  • 重複するジョブをスキップします。

実行時に、ジョブ転送タスクは 1 つまたは 2 つの SMO 接続マネージャーを使用して、転送元および転送先サーバーに接続します。 SMO 接続マネージャーはジョブ転送タスクとは別に構成され、ジョブ転送タスクで参照されます。 SMO 接続マネージャーは、サーバーと、このサーバーにアクセスするときに使用する認証モードを指定します。 詳細については、「 SMO 接続マネージャー」をご覧ください。

SQL Server のインスタンス間でのジョブの転送

ジョブ転送タスクは、転送元または転送先として、 SQL Server をサポートします。 転送元または転送先として使用するバージョンに関する制限はありません。

events

ジョブ転送タスクでは、転送されたジョブの数を報告する情報イベントと、ジョブが上書きされた場合の警告イベントが発生します。 ジョブの転送の進捗状況は報告されません。0% または 100% 完了した場合のみ報告されます。

実行値

タスクの ExecutionValue プロパティで定義される実行値は、転送されたジョブの数を返します。 ジョブ転送タスクの ExecValueVariable プロパティにユーザー定義変数を割り当てると、パッケージの他のオブジェクトからジョブの転送に関する情報を使用できるようになります。 詳細については、「Integration Services (SSIS) Variables」(Integration Services (SSIS) の変数) と「Use Variables in Packages」(パッケージで変数を使用する) を参照してください。

ログ エントリ

ジョブ転送タスクには、次のようなカスタム ログ エントリがあります。

  • TransferJobsTaskStarTransferringObjects 転送が開始されたことを報告するログ エントリです。 ログ エントリには、開始時刻が含まれます。

  • TransferJobsTaskFinishedTransferringObjects 転送が終了したことを報告するログ エントリです。 ログ エントリには、終了時刻が含まれます。

また、 OnInformation イベントのログ エントリは転送されたジョブの数を報告し、 OnWarning イベントのログ エントリは転送先でジョブが上書きされると書き込まれます。

セキュリティとアクセス許可

ジョブを転送するユーザーは、sysadmin 固定サーバー ロールのメンバー、または転送元および転送先の両方の SQL Server インスタンスの msdb データベースで SQL Serverエージェント固定データベース ロールのメンバーである必要があります。

ジョブ転送タスクの構成

プロパティを設定するには SSIS デザイナーから行うか、またはプログラムによって設定します。

SSIS デザイナーで設定できるプロパティの詳細については、次のトピックを参照してください。

プログラムによってこれらのプロパティを設定する方法については、次のトピックを参照してください。

SSIS デザイナーでこれらのプロパティを設定する方法については、次のトピックを参照してください。

[ジョブ転送タスク エディター] ([全般] ページ)

[ジョブ転送タスク エディター] ダイアログ ボックスの [全般] ページを使用すると、ジョブ転送タスクの名前と説明を入力できます。

注意

転送先サーバー上の sysadmin 固定サーバー ロールのメンバー、または SQL Server エージェント固定データベース ロールのうち 1 つのロールのメンバーだけが、転送先にジョブを正常に作成できます。 転送元サーバー上のジョブにアクセスするには、ユーザーは少なくとも転送元サーバー上で SQLAgentUserRole 固定データベース ロールのメンバーである必要があります。 SQL Server エージェント固定データベース ロールおよびその権限の詳細については、「 SQL Server エージェントの固定データベース ロール」をご覧ください。

オプション

Name
ジョブ転送タスクの一意な名前を入力します。 この名前は、タスク アイコンのラベルとして使用されます。

Note

タスク名はパッケージ内で一意である必要があります。

説明
ジョブ転送タスクの説明を入力します。

[ジョブ転送タスク エディター] ([ジョブ] ページ)

[ジョブ転送タスク エディター] ダイアログ ボックスの [ジョブ] ページを使用すると、1 つ以上の SQL Server エージェント ジョブを SQL Server の 1 つのインスタンスから別のインスタンスにコピーするためのプロパティを指定できます。

注意

コピー元サーバーのジョブにアクセスするには、少なくともサーバーの SQLAgentUserRole 固定データベース ロールのメンバーであることが必要です。 コピー先サーバーでジョブを正常に作成するには、 sysadmin 固定サーバー ロールのメンバーであるか、 SQL Server エージェント固定データベース ロールの 1 つであることが必要です。 SQL Server エージェント固定データベース ロールおよびその権限の詳細については、「 SQL Server エージェントの固定データベース ロール」をご覧ください。

オプション

SourceConnection
SMO 接続マネージャーを一覧から選択するか、<[新しい接続]> をクリックしてコピー元のサーバーへの新しい接続を作成します。

DestinationConnection
SMO 接続マネージャーを一覧から選択するか、<[新しい接続]> をクリックしてコピー先のサーバーへの新しい接続を作成します。

[TransferAllJobs]
コピー元サーバーからコピー先サーバーにすべてコピーするか、指定の SQL Server エージェント ジョブのみをコピーするかを選択します。

このプロパティには、次の表に示すオプションがあります。

説明
True にします すべてのジョブをコピーします。
False 指定のジョブのみをコピーします。

[JobsList]
[...] ボタンをクリックして、コピーするジョブを選択します。 少なくとも 1 つのジョブを選択する必要があります。

注意

コピーするジョブを選択する前に [SourceConnection] を指定します。

[JobsList] オプションは、 [TransferAllJobs][True] に設定されている場合は使用できません。

[IfObjectExists]
コピー先サーバーに既に存在する名前と同じ名前のジョブをどのように処理するかを選択します。

このプロパティには、次の表に示すオプションがあります。

説明
[FailTask] ジョブの名前がコピー先サーバーに既に存在する名前と同じである場合、タスクは失敗します。
Overwrite コピー先サーバーの同じ名前のジョブを上書きします。
Skip コピー先サーバーの同じ名前のジョブをスキップします。

[EnableJobsAtDestination]
コピー先サーバーにコピーされたジョブを有効にするかどうかを選択します。

このプロパティには、次の表に示すオプションがあります。

説明
True にします コピー先サーバーのジョブを有効にします。
False コピー先サーバーのジョブを無効にします。

参照

Integration Services タスク
制御フロー