SQL Server作业报错特殊案例分析
作者:潇湘隐者 发布时间:2024-01-15 17:33:02
发现问题
一个作业报错,报错信息如下,从错误信息根本看不出为什么出错,手工运行作业又成功了。一时不清楚什么原因导致作业出错。
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, 通过数据库引擎错误严重性(Database Engine Error Severities),我们可以知道13意味着Indicates transaction deadlock errors. 也就是说出现死锁,导致作业的会话成为了死锁的牺牲品。不过也很奇怪,以前也遇到过作业由于出现死锁,导致作业失败的情况。都会在Message里面有提示,但是这个实例的版本SQL Server 2012 SP3(11.0.6020.0),出现死锁,居然没有提示相关死锁信息。不清楚是Bug还是其它原因。
严重性级别
下表列出并说明 SQL Server 数据库引擎所引起错误的严重级别。
严重级别 | 描述 |
0-9 | 返回不太严重的状态信息或报表错误的信息性消息。 数据库引擎 不会引起严重级别为 0 到 9 的系统错误。 |
10 | 返回不太严重的状态信息或报表错误的信息性消息。 由于兼容性原因, 数据库引擎 在将错误信息返回到调用应用程序前将严重性级别从 10 转换为 0。 |
11-16 | 指示可由用户纠正的错误。 |
11 | 指示给定的对象或实体不存在。 |
12 | 特殊严重性,用于因特殊查询提示而不使用锁定的查询。 在某些情况下,因为没有用锁保证一致性,由这些语句所执行的读取操作会产生不一致的数据。 |
13 | 指示事务死锁错误。 |
14 | 指示安全性相关错误,如权限被拒绝。 |
15 | 指示 Transact-SQL?命令中的语法错误。 |
16 | 指示可由用户纠正的常规错误。 |
17-19 | 指示无法由用户纠正的软件错误。 请将问题通知系统管理员。 |
17 | 指示语句导致 SQL Server?用尽资源(如数据库的内存、锁或磁盘空间)或超出了系统管理员设置的某些限制。 |
18 | 指示 数据库引擎 软件中有问题,但可完成执行语句,并且可维护到 数据库引擎 实例的连接。 每当出现严重级别为 18 的消息时均应通知系统管理员。 |
19 | 指示超出了不可配置的 数据库引擎 限制并且当前批处理已终止。 严重级别为 19 或更高的错误消息将停止执行当前的批处理。 严重级别为 19 的错误很少,必须由系统管理员或主要支持提供商更正。 当引发严重级别为 19 的消息时,请与系统管理员联系。 严重级别从 19 到 25 的错误消息均写入错误日志。 |
20-24 | 指示系统问题并且是致命错误,这意味着正在执行某语句或批处理的 数据库引擎 任务已停止运行。 此任务记录了所发生事件的有关信息,然后终止。 在大多数情况下,应用程序与 数据库引擎 实例的连接也可能终止。 如果发生这种情况,该问题可能使应用程序无法重新连接。 |
20 | 指示语句遇到了问题。 由于该问题只影响了当前任务,数据库本身未必已经损坏。 |
21 | 指示遇到了影响当前数据库中所有任务的问题,但数据库本身未必已经损坏。 |
22 | 指示消息中所指定的表或索引因软件或硬件问题而损坏。 |
23 | 指示整个数据库的完整性因硬件或软件问题而出现问题。 |
24 | 指示介质故障。 系统管理员可能需要还原数据库。 您可能还需要致电硬件供应商 |
参考资料:
https://docs.microsoft.com/zh-cn/sql/relational-databases/errors-events/database-engine-error-severities?view=sql-server-2017
来源:http://www.cnblogs.com/kerrycode/p/10497032.html


猜你喜欢
- 1、解决方案mysql是不支持跨库连接的,如果我们实在要连接的话可以用dblink方式。解释:dblink就是我们在创建表的时候连接到我们的
- 我就废话不多说了,大家还是直接看例子吧!import numpy as npfrom numpy import randommatrix1
- SQL一些语句执行后出现异常不会回滚MySQL回滚问题SQL中会隐式提交的操作:1、DDL语句:ALTER DATABASE、ALTER E
- 编写兼容IE和FireFox的脚本确定的件很烦人的事,今日又经历了一次。一、正式表达式问题试图用以下表达式提取中括号“]”后面的内容,连接调
- 安装使用pip install XlsxWriter来安装,Xlsxwriter用来创建excel表格,功能很强大,下面具体介绍:1.简单使
- 目录模板的用处模板语法继承和super函数利用jinja2 进行渲染模板的用处jinja2 可以用来修改配置文件,把配置文件的关键地方可以用
- 很多朋友说JavaScript的decodeURI函数也可以实现,但有bug所有呢,下面看下下面的函数,经过测试使用暂时没什么问题,我在之前
- 考虑下述Python代码片段。对文件中的数据进行某些操作,然后将结果保存回文件中:with open(filename) as f:&nbs
- pip镜像源在国内如果不使用 VPN 是没办法好好使用 pip 命令安装任何 Python 包的。所以另一个选择就是使用国内各大厂的开源镜像
- reflect反射首先,我们要区分两个概念——“标识名”和&
- Python中的frame是什么栈帧(frame)栈帧表示程序运行时函数调用栈中的某一帧。想要获得某个函数相关的栈帧,则必须在调用这个函数且
- 一般常规的我们保存数据为dict类型时,系统会自动帮我们排序;但有时我们想按照输入顺序的key:value保存到dict中,而不想要改变顺序
- 本文实例为大家分享了python实现银行实战系统的具体代码,供大家参考,具体内容如下先附上源代码:│ admin.py  
- 现在vue.js几乎是程序员必会的前端框架啦~今天就学习记录一下怎么运行一个vue项目无论是Idea还是webstorm,都是一样的操作。去
- 前面学习过Meanshift算法,在观察这个结果标记时,会发现有这样一个问题,如下图:汽车比较远时,用一个很小的窗口就可以把它框住,这是符合
- 一、PHP动态生成第一步:在PHP文件中直接写入JS代码,并在头部声明这是一个JavaScript文件<?php header(
- 带你走进数据类型一:整数、浮点数Python中整数和浮点数的定义以及运算和C++都是一样的,我在这里就不需多说了,我就说明一点:Python
- 本文实例讲述了Python实现利用最大公约数求三个正整数的最小公倍数。分享给大家供大家参考,具体如下:在求解两个数的小公倍数的方法时,假设两
- Python 链接抖音python下载抖音内容的帖子网上有一些,但都比较麻烦,需要通过adb连接安卓手机后,模拟操作。我这么懒,这种事儿玩不
- 动手写个小组件(组件入门) 这篇文章主要是为想将自己的ASP水平提高的人写的! 把ASP代码变成组件,开发者不仅是加快了ASP的速度,而且也