SQL Server作業(yè)報錯特殊案例分析
發(fā)現(xiàn)問題
一個作業(yè)報錯,報錯信息如下,從錯誤信息根本看不出為什么出錯,手工運行作業(yè)又成功了。一時不清楚什么原因?qū)е伦鳂I(yè)出錯。
Message
Executed as user: NT SERVICE\SQLSERVERAGENT. ...eration. [SQLSTATE 01003] (Message 8153) Mar 6 2019 8:09AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:10AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:17AM [SQLSTATE 01000] (Message 0) Mar 6 2019 11:17AM [SQLSTATE 01000] (Message 0) Mar 7 2019 1:03PM [SQLSTATE 01000] (Message 0) Mar 6 2019 4:06PM [SQLSTATE 01000] (Message 0) Mar 7 2019 4:07PM [SQLSTATE 01000] (Message 0) Mar 6 2019 1:40PM [SQLSTATE 01000] (Message 0) Mar 7 2019 1:36PM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:02AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:06AM [SQLSTATE 01000] (Message 0) Mar 7 2019 9:47AM [SQLSTATE 01000] (Message 0) Mar 6 2019 5:38PM [SQLSTATE 01000] (Message 0) Mar 7 2019 5:34PM [SQLSTATE 01000] (Message 0) Mar 6 2019 3:16PM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:07AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:09AM [SQLSTATE 01000] (Message 0) Mar 7 2019 2:18PM [SQLSTATE 01000] (Message 0) Mar 7 2019 1:24PM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:11AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:12AM [SQLSTATE 01000] (Message 0) Mar 6 2019 11:34AM [SQLSTATE 01000] (Message 0) Mar 7 2019 11:39AM [SQLSTATE 01000] (Message 0) Mar 7 2019 4:20PM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:51AM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:44AM [SQLSTATE 01000] (Message 0) Mar 7 2019 7:31AM [SQLSTATE 01000] (Message 0) Mar 6 2019 10:46AM [SQLSTATE 01000] (Message 0) Mar 6 2019 10:10AM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:08AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:04AM [SQLSTATE 01000] (Message 0) Mar 7 2019 3:19PM [SQLSTATE 01000] (Message 0) Mar 6 2019 9:02AM [SQLSTATE 01000] (Message 0) Mar 7 2019 9:01AM [SQLSTATE 01000] (Message 0) Mar 7 2019 9:48AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:01AM [SQLSTATE 01000] (Message 0) Mar 6 2019 4:16PM [SQLSTATE 01000] (Message 0) Mar 6 2019 2:17PM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:31AM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:04AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:08AM [SQLSTATE 01000] (Message 0) Mar 6 2019 1:08PM [SQLSTATE 01000] (Message 0) Mar 7 2019 1:04PM [SQLSTATE 01000] (Message 0) Mar 7 2019 2:03PM [SQLSTATE 01000] (Message 0) Mar 6 2019 3:18PM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:16AM [SQLSTATE 01000] (Message 0) Mar 6 2019 2:14PM [SQLSTATE 01000] (Message 0) Mar 6 2019 4:13PM [SQLSTATE 01000] (Message 0) Mar 7 2019 4:10PM [SQLSTATE 01000] (Message 0) Mar 6 2019 9:02AM [SQLSTATE 01000] (Message 0) Mar 7 2019 2:01PM [SQLSTATE 01000] (Message 0) Mar 7 2019 7:44AM [SQLSTATE 01000] (Message 0) Mar 6 2019 5:38PM [SQLSTATE 01000] (Message 0) Mar 7 2019 5:34PM [SQLSTATE 01000] (Message 0) Mar 6 2019 5:38PM [SQLSTATE 01000] (Message 0) Mar 7 2019 5:34PM [SQLSTATE 01000] (Message 0) Mar 6 2019 2:03PM [SQLSTATE 01000] (Message 0) Mar 6 2019 3:05PM [SQLSTATE 01000] (Message 0) Mar 7 2019 7:01PM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:05AM [SQLSTATE 01000] (Message 0) Mar 6 2019 3:47PM [SQLSTATE 01000] (Message 0) Mar 6 2019 9:16AM [SQLSTATE 01000] (Message 0) Mar 6 2019 2:18PM [SQLSTATE 01000] (Message 0) Mar 7 2019 2:18PM [SQLSTATE 01000] (Message 0) Mar 7 2019 2:36PM [SQLSTATE 01000] (Message 0) Mar 6 2019 9:20AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:32AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:13AM [SQLSTATE 01000] (Message 0) Mar 6 2019 1:31PM [SQLSTATE 01000] (Message 0) Mar 6 2019 8:06AM [SQLSTATE 01000] (Message 0) Mar 7 2019 8:07AM [SQLSTATE 01000] (Message 0) Mar 6 2019 3:16PM [SQLSTATE 01000] (Message 0) Mar 6 2019 3:16PM [SQLSTATE 01000] (Message 0) Mar 6 2019 9:03AM [SQLSTATE 01000] (Message 0) Mar 6 2019 11:59AM [SQLSTATE 01000] (Message 0) Mar 7 2019 12:01PM [SQLSTATE 01000] (Message 0) Mar 6 2019 2:59PM [SQLSTATE 01000] (Message 0) Mar 6 2019 11:49AM [SQLSTATE 01000] ... The step failed.
如上截圖所示,從這里可以看到出錯信息的Sql Severity級別為13, 通過數(shù)據(jù)庫引擎錯誤嚴重性(Database Engine Error Severities),我們可以知道13意味著Indicates transaction deadlock errors. 也就是說出現(xiàn)死鎖,導致作業(yè)的會話成為了死鎖的犧牲品。不過也很奇怪,以前也遇到過作業(yè)由于出現(xiàn)死鎖,導致作業(yè)失敗的情況。都會在Message里面有提示,但是這個實例的版本SQL Server 2012 SP3(11.0.6020.0),出現(xiàn)死鎖,居然沒有提示相關死鎖信息。不清楚是Bug還是其它原因。
嚴重性級別
下表列出并說明 SQL Server 數(shù)據(jù)庫引擎所引起錯誤的嚴重級別。
嚴重級別 |
描述 |
0-9 |
返回不太嚴重的狀態(tài)信息或報表錯誤的信息性消息。數(shù)據(jù)庫引擎不會引起嚴重級別為 0 到 9 的系統(tǒng)錯誤。 |
10 |
返回不太嚴重的狀態(tài)信息或報表錯誤的信息性消息。由于兼容性原因,數(shù)據(jù)庫引擎在將錯誤信息返回到調(diào)用應用程序前將嚴重性級別從 10 轉(zhuǎn)換為 0。 |
11-16 |
指示可由用戶糾正的錯誤。 |
11 |
指示給定的對象或?qū)嶓w不存在。 |
12 |
特殊嚴重性,用于因特殊查詢提示而不使用鎖定的查詢。在某些情況下,因為沒有用鎖保證一致性,由這些語句所執(zhí)行的讀取操作會產(chǎn)生不一致的數(shù)據(jù)。 |
13 |
指示事務死鎖錯誤。 |
14 |
指示安全性相關錯誤,如權限被拒絕。 |
15 |
指示Transact-SQL?命令中的語法錯誤。 |
16 |
指示可由用戶糾正的常規(guī)錯誤。 |
17-19 |
指示無法由用戶糾正的軟件錯誤。請將問題通知系統(tǒng)管理員。 |
17 |
指示語句導致SQL Server?用盡資源(如數(shù)據(jù)庫的內(nèi)存、鎖或磁盤空間)或超出了系統(tǒng)管理員設置的某些限制。 |
18 |
指示數(shù)據(jù)庫引擎軟件中有問題,但可完成執(zhí)行語句,并且可維護到數(shù)據(jù)庫引擎實例的連接。每當出現(xiàn)嚴重級別為 18 的消息時均應通知系統(tǒng)管理員。 |
19 |
指示超出了不可配置的數(shù)據(jù)庫引擎限制并且當前批處理已終止。嚴重級別為 19 或更高的錯誤消息將停止執(zhí)行當前的批處理。嚴重級別為 19 的錯誤很少,必須由系統(tǒng)管理員或主要支持提供商更正。當引發(fā)嚴重級別為 19 的消息時,請與系統(tǒng)管理員聯(lián)系。嚴重級別從 19 到 25 的錯誤消息均寫入錯誤日志。 |
20-24 |
指示系統(tǒng)問題并且是致命錯誤,這意味著正在執(zhí)行某語句或批處理的數(shù)據(jù)庫引擎任務已停止運行。此任務記錄了所發(fā)生事件的有關信息,然后終止。在大多數(shù)情況下,應用程序與數(shù)據(jù)庫引擎實例的連接也可能終止。如果發(fā)生這種情況,該問題可能使應用程序無法重新連接。 |
20 |
指示語句遇到了問題。由于該問題只影響了當前任務,數(shù)據(jù)庫本身未必已經(jīng)損壞。 |
21 |
指示遇到了影響當前數(shù)據(jù)庫中所有任務的問題,但數(shù)據(jù)庫本身未必已經(jīng)損壞。 |
22 |
指示消息中所指定的表或索引因軟件或硬件問題而損壞。 |
23 |
指示整個數(shù)據(jù)庫的完整性因硬件或軟件問題而出現(xiàn)問題。 |
24 |
指示介質(zhì)故障。系統(tǒng)管理員可能需要還原數(shù)據(jù)庫。您可能還需要致電硬件供應商 |
參考資料:
https://docs.microsoft.com/zh-cn/sql/relational-databases/errors-events/database-engine-error-severities?view=sql-server-2017
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對本站的支持。
版權聲明:本站文章來源標注為YINGSOO的內(nèi)容版權均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。