共用方式為


建立排程並將排程附加至作業

適用於:SQL ServerAzure SQL 受控實例

重要

Azure SQL 受控實例上,目前支援大部分但並非所有 SQL Server Agent 功能。 如需詳細資訊,請參閱 與 SQL Server 的 Azure SQL 受控實例 T-SQL 差異。

排程 SQL Server Agent 作業表示定義條件或條件,讓作業在沒有使用者互動的情況下開始執行。 您可以藉由為作業建立新的排程,或將現有的排程附加至作業,來排程作業以自動執行。

有兩種方式可以建立排程:

  • 在建立作業時建立排程。

  • 在 [物件總管] 中建立排程。

建立排程之後,您可以將該排程附加至多個作業,即使已針對特定作業建立排程也一樣。 您也可以將排程從作業中分離。

警告

更新排程會影響附加至排程的所有作業。 如果您想要控制個別作業的排程,請務必為每個作業建立個別的排程物件。

排程可以根據時間或事件。 例如,您可以排程作業在下列時間執行:

  • 每當 SQL Server Agent 啟動時。

  • 每當電腦的 CPU 使用率位於您定義為閒置的層級時。

  • 一次,在特定日期和時間。

  • 在週期性排程上。

作為作業排程的替代方案,您也可以建立警示,藉由執行作業來回應事件。

注意

一次只能執行一個作業實例。 如果您嘗試在作業依排程執行時手動執行作業,SQL Server Agent 會拒絕要求。

若要防止排程工作執行,您必須執行下列其中一項:

  • 停用排程。

  • 停用任務。

  • 將排程從作業中移除。

  • 停止 SQL Server Agent 服務。

  • 刪除排程。

如果未啟用排程,工作仍然可以執行以回應警示,或使用者手動執行作業時。 未啟用作業排程時,不會針對任何使用排程的作業啟用排程。

您必須明確重新啟用已停用的排程。 編輯排程不會自動重新啟用排程。

排程開始日期

排程的開始日期必須大於或等於19900101。

當您將排程附加至作業時,您應該檢閱排程第一次用來執行作業的開始日期。 開始日期取決於您將排程附加至作業的日期和時間。 例如,您建立排程,每隔一週一上午 8:00 執行一次。如果您在 2008 年 3 月 3 日星期一上午 10:00 建立作業,則排程開始日期為 2008 年 3 月 17 日星期一。 如果您在 2008 年 3 月 4 日星期二建立另一個作業,則排程開始日期為 2008 年 3 月 10 日星期一。

您可以將排程附加至作業之後,變更排程開始日期。

CPU 空閒排程

若要最大化 CPU 資源,您可以定義 SQL Server Agent 的 CPU 閑置條件。 SQL Server Agent 會使用 CPU 閑置條件設定來判斷執行作業的最佳時間。 例如,您可以排程作業,以在CPU閑置期間重建索引,以及緩慢的生產期間。

在您定義作業以在 CPU 閑置期間執行之前,請先判斷在正常處理期間 CPU 上的負載。 若要這樣做,請使用 SQL Server Profiler 或性能監視器來監視伺服器流量並收集統計數據。 然後,您可以使用您收集的信息來設定 CPU 空閒時間百分比和持續時間。

將 CPU 閒置條件定義為 CPU 使用量需低於該百分比並保持一段指定的時間。 接下來,設定時間量。 當 CPU 使用量低於指定時間量的指定百分比時,SQL Server Agent 會啟動具有 CPU 空閒時間排程的所有作業。 如需使用 SQL Server Profiler 或性能監視器監視 CPU 使用量的詳細資訊,請參閱 監視 CPU 使用量

描述 主題
描述如何建立 SQL Server Agent 作業的排程。 建立排程
描述如何排程 SQL Server Agent 作業。 排程作業
說明如何定義伺服器的CPU閑置條件。 設定 CPU 空閒時間和持續時間 (SQL Server Management Studio)

另請參閱

sp_help_jobschedule
sysjobschedules