問題現象
從阿裡雲上鏡像過來的一台數據庫服務器,SQL Agent服務啟動不了,提示服務啟動後停止。(原數據庫服務器是正常的,懷疑跟鏡像有關)
如下是系統日志和SQL Agent的日志
復制代碼 代碼如下:SQLServerAgent could not be started (reason: 無法連接到服務器“(local)”;SQLServerAgent 無法啟動)
2016-05-20 11:09:03 - ? [100] Microsoft SQLServerAgent 版本 11.0.3000.0 (內部版本號 X64 unicode 零售): 進程 ID 3568
2016-05-20 11:09:03 - ? [495] SQL Server 代理啟動服務帳戶是 WORKGROUP\iZ23egtmtrmZ$。
2016-05-20 11:09:03 - ! [150] SQL Server 不接受連接(錯誤: 18456)。請等待 SQL Server 允許連接。嘗試的操作為: 啟動時驗證連接。
2016-05-20 11:09:03 - ! [000] 無法連接到服務器“(local)”;SQLServerAgent 無法啟動
2016-05-20 11:09:03 - ! [298] SQLServer 錯誤: 18456,用戶 'NT AUTHORITY\ANONYMOUS LOGON' 登錄失敗。 [SQLSTATE 28000]
2016-05-20 11:09:03 - ! [382] 無法登錄到服務器“(local)”(DisableAgentXPs)
2016-05-20 11:09:03 - ? [098] SQLServerAgent 已終止(一般)
解決方法:
在注冊表中,定位到SQL Agent的ServerHOST屬性:
復制代碼 代碼如下:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11.SQL2012\SQLServerAgent\ServerHost
其中MSSQL.X表示實例信息,其命名規則為:MSSQL版本號.實例名,如我機器上的MSSQL11.SQL2012,你機器上的實例名可能不同,另外,如果你的主機上安裝了多個實例,也會有多個這樣的選項,請根據實際情況查找,或者直接使用CTRL+F查找ServerHost關鍵字。
雙擊打開ServerHOST屬性,在“數值數據”下填入np:servername
其中servername就是服務器的主機名。
最後再去啟動SQL Server Agent,便可以了。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。