錯誤#1 16:50 2014-5-20
安裝好數據庫(08R2),啟動數據庫代理服務失敗,當時也沒在意。后來裝上SQL12,再次啟動數據庫代理依舊失敗。
不能再得過且過,該找找具體原因了。查看SQLAGENT代理日志:

2014-05-20 16:51:33 - ? [100] Microsoft SQLServerAgent 版本 11.0.2100.60 (內部版本號 x86 unicode 零售): 進程 ID 3076 2014-05-20 16:51:33 - ? [495] SQL Server 代理啟動服務帳戶是 NT Service\SQLAgent$SQL12。 2014-05-20 16:51:33 - ! [150] SQL Server 不接受連接(錯誤: 18456)。請等待 SQL Server 允許連接。嘗試的操作為: 啟動時驗證連接。 2014-05-20 16:51:33 - ! [000] 無法連接到服務器“USER-67NP5R8LGK\SQL12”;SQLServerAgent 無法啟動 2014-05-20 16:51:33 - ! [298] SQLServer 錯誤: 18456,用戶 'NT AUTHORITY\ANONYMOUS LOGON' 登錄失敗。 [SQLSTATE 28000] 2014-05-20 16:51:33 - ! [382] 無法登錄到服務器“USER-67NP5R8LGK\SQL12”(DisableAgentXPs) 2014-05-20 16:51:33 - ? [098] SQLServerAgent 已終止(一般)
查看服務登錄帳戶為網絡服務,將其改成Administrator后再次啟動,代理日志信息:

2014-05-20 16:53:26 - ? [100] Microsoft SQLServerAgent 版本 11.0.2100.60 (內部版本號 x86 unicode 零售): 進程 ID 8128 2014-05-20 16:53:26 - ? [495] SQL Server 代理啟動服務帳戶是 USER-67NP5R8LGK\Administrator。 2014-05-20 16:53:26 - ! [150] SQL Server 不接受連接(錯誤: 18452)。請等待 SQL Server 允許連接。嘗試的操作為: 啟動時驗證連接。 2014-05-20 16:53:26 - ! [000] 無法連接到服務器“USER-67NP5R8LGK\SQL12”;SQLServerAgent 無法啟動 2014-05-20 16:53:26 - ! [298] SQLServer 錯誤: 18452,登錄失敗。該登錄名來自不受信任的域,不能與 Windows 身份驗證一起使用。 [SQLSTATE 28000] 2014-05-20 16:53:26 - ! [382] 無法登錄到服務器“USER-67NP5R8LGK\SQL12”(DisableAgentXPs) 2014-05-20 16:53:26 - ? [098] SQLServerAgent 已終止(一般)
對應這段時間ERRORLOG下的信息為:

2014-05-20 16:51:33.30 登錄 Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'. 原因: 找不到與提供的名稱匹配的登錄名。 [客戶端: <local machine>] 2014-05-20 16:53:26.65 登錄 錯誤: 17806,嚴重性: 20,狀態: 14。 2014-05-20 16:53:26.65 登錄 SSPI handshake failed with error code 0x8009030c, state 14 while establishing a connection with integrated security; the connection has been closed. Reason: AcceptSecurityContext 失敗。Windows 錯誤代碼指示失敗的原因。 登錄沒有成功 [客戶端: <local machine>] 2014-05-20 16:53:26.69 登錄 錯誤: 18452,嚴重性: 14,狀態: 1。 2014-05-20 16:53:26.69 登錄 Login failed. The login is from an untrusted domain and cannot be used with Windows authentication. [客戶端: <local machine>] 2014-05-20 16:53:26.75 登錄 錯誤: 17806,嚴重性: 20,狀態: 14。 2014-05-20 16:53:26.75 登錄 SSPI handshake failed with error code 0x8009030c, state 14 while establishing a connection with integrated security; the connection has been closed. Reason: AcceptSecurityContext 失敗。Windows 錯誤代碼指示失敗的原因。 登錄沒有成功 [客戶端: <local machine>] 2014-05-20 16:53:26.75 登錄 錯誤: 18452,嚴重性: 14,狀態: 1。 2014-05-20 16:53:26.75 登錄 Login failed. The login is from an untrusted domain and cannot be used with Windows authentication. [客戶端: <local machine>]
解答#1 網上找到解決方法,測試可行
1.open regedit
2.go to path: HKLM\System\CurrentControlSet\Control\LSA
3.add DWORD "DisableLoopbackCheck”
4.set value to 1
錯誤#2 17:54 2014-5-26
SQL12代理日志中很多Reloading agent settings。本來有一個登錄名專門用於執行SSIS包,近幾天作業報錯,錯誤信息為登錄超時。
EXEC xp_readerrorlog 0,1,null,null,'2014-05-26','2014-05-27','DESC' EXEC xp_readerrorlog 0,2,null,null,'2014-05-26','2014-05-27','DESC'
查看ERRORLOG下沒有這個登錄名的信息,代理日志中發現很多Reloading agent settings。晚上回來后查看自己電腦上的代理日志情況,發現也有很多Reloading agent settings。好吧,我承認都沒怎么去細看代理日志。

2014-05-20 17:05:49 - ? [100] Microsoft SQLServerAgent 版本 11.0.2100.60 (內部版本號 x86 unicode 零售): 進程 ID 3896 2014-05-20 17:05:49 - ? [495] SQL Server 代理啟動服務帳戶是 USER-67NP5R8LGK\Administrator。 2014-05-20 17:05:50 - ? [000] 配置選項 'show advanced options' 已從 0 更改為 1。請運行 RECONFIGURE 語句進行安裝。 [SQLSTATE 01000] (消息 15457) 配置選項 'Agent XPs' 已從 0 更改為 1。請運行 RECONFIGURE 語句進行安裝。 [SQLSTATE 01000] (消息 15457) 配置選項 'show advanced options' 已從 1 更改為 0。請運行 RECONFIGURE 語句進行安裝。 [SQLSTATE 01000] (消息 15457) 2014-05-20 17:05:51 - ? [101] SQL Server USER-67NP5R8LGK\SQL12 版本 11.00.2100 (連接限制: 0) 2014-05-20 17:05:51 - ? [102] SQL Server ODBC 驅動程序版本 11.00.2100 2014-05-20 17:05:51 - ? [103] 驅動程序使用的 NetLib 是 DBNETLIB;本地主機服務器是 USER-67NP5R8LGK\SQL12 2014-05-20 17:05:51 - ? [310] 檢測到 4 個處理器和 3018 MB RAM 2014-05-20 17:05:51 - ? [339] 本地計算機是 USER-67NP5R8LGK,運行的是 Windows NT 6.1 (7601) Service Pack 1 2014-05-20 17:05:51 - ? [432] 子系統緩存中有 12 個子系統 2014-05-20 17:06:04 - ! [364] 尚未啟動 Messenger 服務 - 將不發送 NetSend 通知 2014-05-20 17:06:04 - ? [129] SQLAgent$SQL12 在 Windows NT 服務控制下啟動 2014-05-20 17:06:04 - + [475] 沒有為代理通知啟用數據庫郵件。 2014-05-20 17:06:04 - + [396] 尚未定義空閑 CPU 條件 - OnIdle 作業計划將不起任何作用 2014-05-20 17:07:34 - ? Reloading agent settings 2014-05-20 17:09:04 - ? Reloading agent settings 2014-05-20 17:10:34 - ? Reloading agent settings 2014-05-20 17:12:05 - ? Reloading agent settings 2014-05-20 17:13:35 - ? Reloading agent settings 2014-05-20 17:15:05 - ? Reloading agent settings 2014-05-20 17:16:35 - ? Reloading agent settings 2014-05-20 17:18:06 - ? Reloading agent settings 2014-05-20 17:19:36 - ? Reloading agent settings 2014-05-20 17:21:06 - ? Reloading agent settings 2014-05-20 17:22:36 - ? Reloading agent settings 2014-05-20 17:24:06 - ? Reloading agent settings 2014-05-20 17:25:36 - ? Reloading agent settings 2014-05-20 17:27:06 - ? Reloading agent settings 2014-05-20 17:28:37 - ? Reloading agent settings 2014-05-20 17:30:07 - ? Reloading agent settings 2014-05-20 17:31:37 - ? Reloading agent settings 2014-05-20 17:33:07 - ? Reloading agent settings 2014-05-20 17:34:37 - ? Reloading agent settings 2014-05-20 17:36:07 - ? Reloading agent settings 2014-05-20 17:37:37 - ? Reloading agent settings 2014-05-20 17:39:08 - ? Reloading agent settings 2014-05-20 17:40:38 - ? Reloading agent settings 2014-05-20 17:42:08 - ? Reloading agent settings 2014-05-20 17:43:38 - ? Reloading agent settings 2014-05-20 17:45:08 - ? Reloading agent settings 2014-05-20 17:46:38 - ? Reloading agent settings
解答#2 網上找到解決方法
Go to registry on your SQL Server machine and navigate to corresponding SQL Instance registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\ MSSQL11.YOUR_INSTANCE_NAME\SQLServerAgent
Change registry settings called “AutoRegistryRefresh” from 1 to 0.
The side impact of this: if you change any default settings behavior for SQL Agent, you may need to restart SQL Agent to get it.
在自己電腦上測試修改后沒再出現那條信息,暫時沒應用於生產環境。 附上兩張截圖,SQL代理沒能正常啟動時查看SQL Server日志所報的錯誤。但現在正常了,不知是不是因為解答#1的緣故?望知道的同學告訴一聲。