共用方式為


如何:建立 SQL Server Agent 主要作業 (Transact-SQL)

此主題描述如何使用預存程序來建立 Microsoft SQL Server Agent 的主要作業。

如需有關用於 SQL Server Agent 服務之 Windows 帳戶如何影響多伺服器環境的資訊,請參閱<建立多伺服器環境>。

若要建立 SQL Server Agent 的主要作業

  1. 執行 sp_add_job 以建立作業。

  2. 執行 sp_add_jobstep 以建立一或多個作業步驟。

  3. 執行 sp_add_schedule 以建立排程。

  4. 執行 sp_attach_schedule,將排程附加至作業。

  5. 執行 sp_add_jobserver 指定要執行作業的目標伺服器。

SQL Server Agent 主要作業的變更必須傳播至所有相關的目標伺服器。因為目標伺服器最初並未下載作業,直到呼叫 sp_add_jobserver 後才下載,所以 Microsoft 建議您先完成特定作業的所有作業步驟和作業排程,再執行 sp_add_jobserver。否則,後續必須呼叫 sp_post_msx_operation,才能要求目標伺服器重新下載已修改的作業。

安全性

具有和在目標伺服器上,Proxy 帳戶內容下 Proxy 執行相關聯之步驟的散發式作業。請確保符合以下條件,否則與 Proxy 相關聯之作業步驟將不會從主要伺服器下載至目標:

  • 登錄子機碼 \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<instance_name>\SQL Server Agent\AllowDownloadedJobsToMatchProxyName (REG_DWORD) 是設定為 1 (true)。依預設,這個子機碼設為 0 (False)。

  • 存在於目標伺服器上,同時執行作業步驟之主要伺服器上的 Proxy 帳戶,具有相同名稱的 Proxy 帳戶。

如果使用 Proxy 帳戶的作業步驟在從主要伺服器下載 Proxy 帳戶至目標伺服器時失敗,您可以在 msdb 資料庫的 sysdownloadlist 資料表中,檢查 error_message 資料行,以瞭解下列錯誤訊息:

  • "此作業步驟需要 Proxy 帳戶,但目標伺服器已停用 Proxy 比對。"

    若要解決這個錯誤,請將 AllowDownloadedJobsToMatchProxyName 登錄子機碼設為 1。

  • 「找不到 Proxy。」

    若要解決這個錯誤,請確定目標伺服器上有 Proxy 帳戶,且帳戶名稱與執行該作業步驟的主要伺服器 Proxy 帳戶相同。