今天打算用SQL Server代理(SQLServerAgent)運行定時任務的時候出錯,報“當 SQLServerAgent 正在啟動時,無法執行此操作。請稍候再試。”
網上的解決方案有二:
一、CSDN鄒建提供的辦法:取消資料庫伺服器的Windows NT纖程設定,重啟SQL SERVER伺服器。
二、對於伺服器上資料的備份工作是網管員日常工作中最重要的工作之一,SQLServerAgent服務使得我們可以用SQL上的“資料庫維護計劃”功能來自動備份資料,但最近我探索服務器上SQLServerAgent服務無法啟動了,回想最近所做的操作,原來是因為我把SQL中
Builtin/Administrators這個帳號的伺服器存取權限禁止掉了,因為這個帳號的存在對於SQL來說很不安全,但又不想刪除,因此把它的許可權禁止,結果導致SQLServerAgent服務無法啟動。
解決的方法很簡單,只要刪除這個帳號,再建一個同時具有系統管理許可權和SQL系統管理權限的使用者,然後用這個使用者去啟動SQLServerAgent服務就可以了。以下是操作步驟:
1、開啟企業管理器,開啟左邊的執行個體->安全性->登入,在右邊空白處右擊滑鼠,選“建立登入”,單擊“名稱:”右邊的按鈕,會出現很多帳號名,選擇一個具有windows超級管理員權限的使用者(如Administrator),單擊“添加”,再在“伺服器角色”標籤中選中“System Administrators”打勾,確定。
2、開啟企業管理器左邊的“管理”,右擊“SQLServer代理”,選屬性->常規->服務啟動帳戶,選“本帳戶”,然後在旁邊輸入剛才所建的帳戶和密碼(例如:.\Administrator),密碼是此使用者的密碼,確定。
3、最後,右擊“SQLServer代理”,選“啟動”,就能看到Agent成功啟動了。
因為問題伺服器是多CPU的,所以以前配置了使用Windows NT纖程的選項,取消這個選項之後,果然解決了問題,至於解決方案二,沒有去試,不知是否正確。