SQL Server作業(yè)報(bào)錯(cuò)特殊案例分析
發(fā)現(xiàn)問(wèn)題
一個(gè)作業(yè)報(bào)錯(cuò),報(bào)錯(cuò)信息如下,從錯(cuò)誤信息根本看不出為什么出錯(cuò),手工運(yùn)行作業(yè)又成功了。一時(shí)不清楚什么原因?qū)е伦鳂I(yè)出錯(cuò)。
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.
如上截圖所示,從這里可以看到出錯(cuò)信息的Sql Severity級(jí)別為13, 通過(guò)數(shù)據(jù)庫(kù)引擎錯(cuò)誤嚴(yán)重性(Database Engine Error Severities),我們可以知道13意味著Indicates transaction deadlock errors. 也就是說(shuō)出現(xiàn)死鎖,導(dǎo)致作業(yè)的會(huì)話成為了死鎖的犧牲品。不過(guò)也很奇怪,以前也遇到過(guò)作業(yè)由于出現(xiàn)死鎖,導(dǎo)致作業(yè)失敗的情況。都會(huì)在Message里面有提示,但是這個(gè)實(shí)例的版本SQL Server 2012 SP3(11.0.6020.0),出現(xiàn)死鎖,居然沒(méi)有提示相關(guān)死鎖信息。不清楚是Bug還是其它原因。
嚴(yán)重性級(jí)別
下表列出并說(shuō)明 SQL Server 數(shù)據(jù)庫(kù)引擎所引起錯(cuò)誤的嚴(yán)重級(jí)別。
嚴(yán)重級(jí)別 |
描述 |
0-9 |
返回不太嚴(yán)重的狀態(tài)信息或報(bào)表錯(cuò)誤的信息性消息。 數(shù)據(jù)庫(kù)引擎 不會(huì)引起嚴(yán)重級(jí)別為 0 到 9 的系統(tǒng)錯(cuò)誤。 |
10 |
返回不太嚴(yán)重的狀態(tài)信息或報(bào)表錯(cuò)誤的信息性消息。 由于兼容性原因, 數(shù)據(jù)庫(kù)引擎 在將錯(cuò)誤信息返回到調(diào)用應(yīng)用程序前將嚴(yán)重性級(jí)別從 10 轉(zhuǎn)換為 0。 |
11-16 |
指示可由用戶糾正的錯(cuò)誤。 |
11 |
指示給定的對(duì)象或?qū)嶓w不存在。 |
12 |
特殊嚴(yán)重性,用于因特殊查詢提示而不使用鎖定的查詢。 在某些情況下,因?yàn)闆](méi)有用鎖保證一致性,由這些語(yǔ)句所執(zhí)行的讀取操作會(huì)產(chǎn)生不一致的數(shù)據(jù)。 |
13 |
指示事務(wù)死鎖錯(cuò)誤。 |
14 |
指示安全性相關(guān)錯(cuò)誤,如權(quán)限被拒絕。 |
15 |
指示 Transact-SQL?命令中的語(yǔ)法錯(cuò)誤。 |
16 |
指示可由用戶糾正的常規(guī)錯(cuò)誤。 |
17-19 |
指示無(wú)法由用戶糾正的軟件錯(cuò)誤。 請(qǐng)將問(wèn)題通知系統(tǒng)管理員。 |
17 |
指示語(yǔ)句導(dǎo)致 SQL Server?用盡資源(如數(shù)據(jù)庫(kù)的內(nèi)存、鎖或磁盤空間)或超出了系統(tǒng)管理員設(shè)置的某些限制。 |
18 |
指示 數(shù)據(jù)庫(kù)引擎 軟件中有問(wèn)題,但可完成執(zhí)行語(yǔ)句,并且可維護(hù)到 數(shù)據(jù)庫(kù)引擎 實(shí)例的連接。 每當(dāng)出現(xiàn)嚴(yán)重級(jí)別為 18 的消息時(shí)均應(yīng)通知系統(tǒng)管理員。 |
19 |
指示超出了不可配置的 數(shù)據(jù)庫(kù)引擎 限制并且當(dāng)前批處理已終止。 嚴(yán)重級(jí)別為 19 或更高的錯(cuò)誤消息將停止執(zhí)行當(dāng)前的批處理。 嚴(yán)重級(jí)別為 19 的錯(cuò)誤很少,必須由系統(tǒng)管理員或主要支持提供商更正。 當(dāng)引發(fā)嚴(yán)重級(jí)別為 19 的消息時(shí),請(qǐng)與系統(tǒng)管理員聯(lián)系。 嚴(yán)重級(jí)別從 19 到 25 的錯(cuò)誤消息均寫(xiě)入錯(cuò)誤日志。 |
20-24 |
指示系統(tǒng)問(wèn)題并且是致命錯(cuò)誤,這意味著正在執(zhí)行某語(yǔ)句或批處理的 數(shù)據(jù)庫(kù)引擎 任務(wù)已停止運(yùn)行。 此任務(wù)記錄了所發(fā)生事件的有關(guān)信息,然后終止。 在大多數(shù)情況下,應(yīng)用程序與 數(shù)據(jù)庫(kù)引擎 實(shí)例的連接也可能終止。 如果發(fā)生這種情況,該問(wèn)題可能使應(yīng)用程序無(wú)法重新連接。 |
20 |
指示語(yǔ)句遇到了問(wèn)題。 由于該問(wèn)題只影響了當(dāng)前任務(wù),數(shù)據(jù)庫(kù)本身未必已經(jīng)損壞。 |
21 |
指示遇到了影響當(dāng)前數(shù)據(jù)庫(kù)中所有任務(wù)的問(wèn)題,但數(shù)據(jù)庫(kù)本身未必已經(jīng)損壞。 |
22 |
指示消息中所指定的表或索引因軟件或硬件問(wèn)題而損壞。 |
23 |
指示整個(gè)數(shù)據(jù)庫(kù)的完整性因硬件或軟件問(wèn)題而出現(xiàn)問(wèn)題。 |
24 |
指示介質(zhì)故障。 系統(tǒng)管理員可能需要還原數(shù)據(jù)庫(kù)。 您可能還需要致電硬件供應(yīng)商 |
參考資料:
https://docs.microsoft.com/zh-cn/sql/relational-databases/errors-events/database-engine-error-severities?view=sql-server-2017
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。
- linux mysql 報(bào)錯(cuò):MYSQL:The server quit without updating PID file
- mysql報(bào)錯(cuò):MySQL server version for the right syntax to use near type=InnoDB的解決方法
- SQL Server附加數(shù)據(jù)庫(kù)報(bào)錯(cuò)無(wú)法打開(kāi)物理文件,操作系統(tǒng)錯(cuò)誤5的圖文解決教程
- mysql啟動(dòng)報(bào)錯(cuò)MySQL server PID file could not be found
- SQL Server 2005/2008 導(dǎo)入導(dǎo)出數(shù)據(jù)常見(jiàn)報(bào)錯(cuò)解決方法
- SQLServer中bigint轉(zhuǎn)int帶符號(hào)時(shí)報(bào)錯(cuò)問(wèn)題解決方法
- 一個(gè)函數(shù)解決SQLServer中bigint 轉(zhuǎn) int帶符號(hào)時(shí)報(bào)錯(cuò)問(wèn)題
- SQL Server2005打開(kāi)數(shù)據(jù)表中的XML內(nèi)容時(shí)報(bào)錯(cuò)的解決辦法
- sql server利用不同語(yǔ)種語(yǔ)言顯示報(bào)錯(cuò)錯(cuò)誤消息的方法示例
相關(guān)文章
公網(wǎng)遠(yuǎn)程訪問(wèn)局域網(wǎng)SQL Server數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)的重要性相信大家都有所了解,在某些場(chǎng)景下,數(shù)據(jù)庫(kù)已經(jīng)成為企業(yè)正常運(yùn)行必不可少的條件之一。與企業(yè)的其他工作一樣,數(shù)據(jù)庫(kù)也需要進(jìn)行必要的維護(hù),想詳細(xì)了解的同學(xué)可以參考這篇文章2023-04-04SQL Server免費(fèi)版的安裝以及使用SQL Server Management Studio(SSMS)連接數(shù)據(jù)庫(kù)的
這篇文章主要介紹了SQL Server免費(fèi)版的安裝以及使用SQL Server Management Studio(SSMS)連接數(shù)據(jù)庫(kù)的圖文方法,需要的朋友可以參考下2020-02-02SQL Server2017使用IP作為服務(wù)器名連接服務(wù)器
本文主要介紹了SQL Server2017使用IP作為服務(wù)器名連接服務(wù)器,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09SQL Server 數(shù)據(jù)庫(kù)中的收縮數(shù)據(jù)庫(kù)和文件操作
收縮數(shù)據(jù)文件通過(guò)將數(shù)據(jù)頁(yè)從文件末尾移動(dòng)到更靠近文件開(kāi)頭的未占用的空間來(lái)恢復(fù)空間,在文件末尾創(chuàng)建足夠的空間后,可取消對(duì)文件末尾的數(shù)據(jù)頁(yè)的分配并將它們返回給文件系統(tǒng),本文給大家介紹SQL Server 數(shù)據(jù)庫(kù)中的收縮數(shù)據(jù)庫(kù)和文件的相關(guān)知識(shí),一起看看吧2023-07-07SQLServer創(chuàng)建索引的5種方法小結(jié)
本文主要介紹了SQLServer創(chuàng)建索引的5種方法小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04完美解決MSSQL"以前的某個(gè)程序安裝已在安裝計(jì)算機(jī)上創(chuàng)建掛起的文件操作"
以前裝過(guò)sql server,后來(lái)刪掉?,F(xiàn)在重裝,卻出現(xiàn)“以前的某個(gè)程序安裝已在安裝計(jì)算機(jī)上創(chuàng)建掛起的文件操作。運(yùn)行安裝程序之前必須重新啟動(dòng)計(jì)算機(jī)”錯(cuò)誤。無(wú)法進(jìn)行下去。 現(xiàn)在又遇到了,終于完全搞定.2008-11-11SQL Server觸發(fā)器及觸發(fā)器中的事務(wù)學(xué)習(xí)
首先, 說(shuō)下我寫(xiě)篇文章的目的,我希望能把我對(duì)觸發(fā)器的理解,分享出來(lái)與你一起學(xué)習(xí)2011-05-05