ジョブにスケジュールを作成してアタッチする
適用対象:SQL Server
Azure SQL Managed Instance
大事な
Azure SQL Managed Instance では、SQL Server エージェントのほとんどの機能が現在サポートされているわけではありません。 詳細については、Azure SQL Managed Instance の T-SQL と SQL Server の違いの を参照してください。
SQL Server エージェント ジョブのスケジュール設定とは、ユーザーの操作なしでジョブの実行を開始する条件を定義することを意味します。 ジョブの新しいスケジュールを作成するか、既存のスケジュールをジョブにアタッチすることで、ジョブを自動的に実行するようにスケジュールできます。
スケジュールを作成するには、次の 2 つの方法があります。
ジョブの作成時にスケジュールを作成します。
オブジェクト エクスプローラーでスケジュールを作成します。
スケジュールが作成されたら、特定のジョブのスケジュールが作成された場合でも、そのスケジュールを複数のジョブにアタッチできます。 ジョブからスケジュールをデタッチすることもできます。
警告
スケジュールを更新すると、スケジュールにアタッチされているすべてのジョブに影響します。 個々のジョブのスケジュールを制御する場合は、ジョブごとに個別のスケジュール オブジェクトを作成してください。
スケジュールは、時間またはイベントに基づいて行うことができます。 たとえば、ジョブを次の時刻に実行するようにスケジュールできます。
SQL Server エージェントが起動するたびに。
コンピューターの CPU 使用率がアイドル状態として定義されているレベルである場合。
特定の日時に 1 回。
定期的にスケジュールを組む。
ジョブ スケジュールの代わりに、イベントに応じてジョブを実行するアラートを作成することもできます。
手記
一度に実行できるジョブのインスタンスは 1 つだけです。 スケジュールされたジョブの実行中にジョブを手動で実行しようとすると、SQL Server エージェントは要求を拒否します。
スケジュールされたジョブが実行されないようにするには、次のいずれかの操作を行う必要があります。
スケジュールを無効にします。
ジョブを無効にします。
ジョブからスケジュールを解除します。
SQL Server エージェント サービスを停止します。
スケジュールを削除します。
スケジュールが有効になっていない場合でも、アラートに応答して、またはユーザーがジョブを手動で実行したときに、ジョブを実行できます。 ジョブ スケジュールが有効になっていない場合、そのスケジュールを使用するすべてのジョブでスケジュールは有効になりません。
無効になっているスケジュールを明示的に再度有効にする必要があります。 スケジュールを編集しても、スケジュールは自動的に再び有効になりません。
開始日のスケジュール設定
スケジュールの開始日は、19900101以上である必要があります。
ジョブにスケジュールをアタッチする場合は、スケジュールがジョブを初めて実行するために使用する開始日を確認する必要があります。 開始日は、ジョブにスケジュールをアタッチする日時によって異なります。 たとえば、毎週月曜日の午前 8 時に実行されるスケジュールを作成します。2008 年 3 月 3 日月曜日の午前 10 時にジョブを作成する場合、スケジュールの開始日は 2008 年 3 月 17 日月曜日です。 2008 年 3 月 4 日 (火) に別のジョブを作成する場合、スケジュールの開始日は 2008 年 3 月 10 日月曜日です。
スケジュールをジョブにアタッチした後で、スケジュールの開始日を変更できます。
CPUアイドル状態スケジュール
CPU リソースを最大化するには、SQL Server エージェントの CPU アイドル状態を定義します。 SQL Server エージェントは、CPU アイドル状態の設定を使用して、ジョブを実行するための最適な時間を決定します。 たとえば、CPU アイドル時間中や運用時間が遅い間にインデックスを再構築するようにジョブをスケジュールできます。
CPU アイドル時間中に実行するジョブを定義する前に、通常の処理中に CPU の負荷を決定します。 これを行うには、SQL Server Profiler またはパフォーマンス モニターを使用してサーバー トラフィックを監視し、統計情報を収集します。 その後、収集した情報を使用して、CPU アイドル時間の割合と期間を設定できます。
CPU アイドル状態を、指定した時間の CPU 使用率を下回る割合で定義します。 次に、時間を設定します。 指定した時間の CPU 使用率が指定した割合を下回ると、SQL Server エージェントは、CPU アイドル時間スケジュールを持つすべてのジョブを開始します。 SQL Server Profiler またはパフォーマンス モニターを使用して CPU 使用率を監視する方法の詳細については、「CPU 使用率の監視」を参照してください。
関連タスク
説明 | 話題 |
---|---|
SQL Server エージェント ジョブのスケジュールを作成する方法について説明します。 | スケジュールを作成する |
SQL Server エージェント ジョブをスケジュールする方法について説明します。 | ジョブをスケジュールする |
サーバーの CPU アイドル状態を定義する方法について説明します。 | CPU アイドル時間と継続時間の設定 (SQL Server Management Studio) |
関連項目
sp_help_jobschedule
sysjobschedules の