位置: 编程技术 - 正文

SqlServer异常处理常用步骤(sql server异常怎么处理)

编辑:rootadmin

推荐整理分享SqlServer异常处理常用步骤(sql server异常怎么处理),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql语句异常,sql出现异常是什么意思,sql语句异常,sql数据库异常,sql语句异常,sql server异常,sql异常值处理,sql server异常,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL Server常见的问题主要是SQL问题造成,常见的主要是CPU过高和阻塞。

一、CPU过高的问题

1、查询系统动态视图查询执行时间长的sql语句

二、阻塞问题

1、查询系统动态视图查询阻塞的sql语句

2、使用系统自带的存储过程

Sp_who2和sp_lock以及使用dbcc inputbuffer(spid) 也可以用来分析阻塞

sp_who可以返回如下信息: (可选参数LoginName, 或active代表活动会话数)Spid (系统进程ID)status (进程状态)loginame (用户登录名)hostname(用户主机名)blk (阻塞进程的SPID)dbname (进程正在使用的数据库名)Cmd (当前正在执行的命令类型)

sp_who2除了显示上面sp_who的输出信息外,还显示下面的信息: (可选参数LoginName, 或active代表活动会话数)CPUTime (进程占用的总CPU时间)DiskIO (进程对磁盘读的总次数)LastBatch (客户最后一次调用存储过程或者执行查询的时间)ProgramName (用来初始化连接的应用程序名称,或者主机名)

下面是sp_who的用法,sp_who2与此类似

A.列出全部当前进程

以下示例使用没有参数的 sp_who 来报告所有当前用户。

B.列出特定用户的进程

以下示例显示如何通过登录名查看有关单个当前用户的信息。

C.显示所有活动进程

D.显示会话 ID 标识的特定进程

sp_lock用法说明

sp_lock [ [ @spid1 = ] 'session ID1' ] [ , [@spid2 = ] 'session ID2' ][ ; ][ @spid1 = ] 'session ID1'

来自用户想要锁定其信息的 sys.dm_exec_sessions 的数据库引擎会话 ID 号。 session ID1 的数据类型为 int,默认值为 NULL。 执行 sp_who 可获取有关该会话的进程信息。 如果未指定会话 ID1,则显示有关所有锁的信息。

[ @spid2 = ] 'session ID2'

来自 sys.dm_exec_sessions 的另一个数据库引擎会话 ID 号,该会话 ID 号可能与 session ID1 同时具有锁,并且用户也需要其有关信息。 session ID2 的数据类型为 int,默认值为 NULL。

在 sp_lock 结果集中,由 @spid1 和 @spid2 参数指定的会话所持有的每个锁都对应一行。 如果既未指定 @spid1 又未指定 @spid2,则结果集将报告当前在数据库引擎实例中处于活动状态的所有会话的锁。

列名

数据类型

说明

spid

smallint

请求锁的进程的数据库引擎会话 ID 号。

dbid

smallint

保留锁的数据库的标识号。 可以使用 DB_NAME() 函数来标识数据库。

ObjId

int

持有锁的对象的标识号。 可以在相关数据库中使用 OBJECT_NAME() 函数来标识对象。 值为 时是一种特殊情况,表示用于记录数据库中页分配的其中一个系统页的锁。

IndId

smallint

持有锁的索引的标识号。

类型

nchar(4)

锁的类型:

RID = 表中单个行的锁,由行标识符 (RID) 标识。

KEY = 索引内保护可串行事务中一系列键的锁。

PAG = 数据页或索引页的锁。

EXT = 对某区的锁。

TAB = 整个表(包括所有数据和索引)的锁。

DB = 数据库的锁。

FIL = 数据库文件的锁。

APP = 指定的应用程序资源的锁。

MD = 元数据或目录信息的锁。

HBT = 堆或 B 树索引的锁。 在 SQL Server 中此信息不完整。

AU = 分配单元的锁。 在 SQL Server 中此信息不完整。

Resource

nchar()

标识被锁定资源的值。 值的格式取决于 Type 列标识的资源类型:

Type 值:Resource 值

RID:格式为 fileid:pagenumber:rid 的标识符,其中 fileid 标识包含页的文件,pagenumber 标识包含行的页,rid 标识页上的特定行。 fileid 与sys.database_files 目录视图中的 file_id 列相匹配。

KEY:数据库引擎内部使用的十六进制数。

PAG:格式为 fileid:pagenumber 的数字,其中 fileid 标识包含页的文件,pagenumber 标识页。

EXT:标识区中的第一页的数字。 该数字的格式为 fileid:pagenumber。

SqlServer异常处理常用步骤(sql server异常怎么处理)

TAB:没有提供信息,因为已在 ObjId 列中标识了表。

DB:没有提供信息,因为已在 dbid 列中标识了数据库。

FIL:文件的标识符,与 sys.database_files 目录视图中的 file_id 列相匹配。

APP:被锁定的应用程序资源的唯一标识符。 格式为 DbPrincipleId:<资源字符串的前 2 个到 个字符><哈希运算值>。

MD:随资源类型而变化。 有关详细信息,请参阅 sys.dm_tran_locks (Transact-SQL) 中 resource_description 列的说明。

HBT:没有提供任何信息。 请改用 sys.dm_tran_locks 动态管理视图。

AU:没有提供任何信息。 请改用 sys.dm_tran_locks 动态管理视图。

模式

nvarchar(8)

所请求的锁模式。 可以是:

NULL = 不授予对资源的访问权限。 用作占位符。

Sch-S = 架构稳定性。 确保在任何会话持有对架构元素(例如表或索引)的架构稳定性锁时,不删除该架构元素。

Sch-M = 架构修改。 必须由要更改指定资源架构的任何会话持有。 确保没有其他会话正在引用所指示的对象。

S = 共享。 授予持有锁的会话对资源的共享访问权限。

U = 更新。 指示对最终可能更新的资源获取的更新锁。 用于防止一种常见的死锁,这种死锁在多个会话锁定资源以便稍后对资源进行更新时发生。

X = 排他。 授予持有锁的会话对资源的独占访问权限。

IS = 意向共享。 指示有意将 S 锁放置在锁层次结构中的某个从属资源上。

IU = 意向更新。 指示有意将 U 锁放置在锁层次结构中的某个从属资源上。

IX = 意向排他。 指示有意将 X 锁放置在锁层次结构中的某个从属资源上。

SIU = 共享意向更新。 指示对有意在锁层次结构中的从属资源上获取更新锁的资源进行共享访问。

SIX = 共享意向排他。 指示对有意在锁层次结构中的从属资源上获取排他锁的资源进行共享访问。

UIX = 更新意向排他。 指示对有意在锁层次结构中的从属资源上获取排他锁的资源持有的更新锁。

BU = 大容量更新。 用于大容量操作。

RangeS_S = 共享键范围和共享资源锁。 指示可串行范围扫描。

RangeS_U = 共享键范围和更新资源锁。 指示可串行更新扫描。

RangeI_N = 插入键范围和 Null 资源锁。 用于在将新键插入索引前测试范围。

RangeI_S = 键范围转换锁。 由 RangeI_N 和 S 锁的重叠创建。

RangeI_U = 由 RangeI_N 和 U 锁的重叠创建的键范围转换锁。

RangeI_X = 由 RangeI_N 和 X 锁的重叠创建的键范围转换锁。

RangeX_S = 由 RangeI_N 和 RangeS_S 锁的重叠创建的键范围转换锁 。

RangeX_U = 由 RangeI_N 和 RangeS_U 锁的重叠创建的键范围转换锁。

RangeX_X = 排他键范围和排他资源锁。 这是在更新范围中的键时使用的转换锁。

状态

nvarchar(5)

锁的请求状态:

CNVRT:锁正在从另一种模式进行转换,但是转换被另一个持有锁(模式相冲突)的进程阻塞。

GRANT:已获取锁。

WAIT:锁被另一个持有锁(模式相冲突)的进程阻塞。

DBCC INPUTBUFFER

显示从客户端发送到 Microsoft® SQL Server&#; 的最后一个语句。

语法

DBCC INPUTBUFFER (spid)

参数

spid

是 sp_who 系统存储过程的输出中所显示的用户连接系统进程 ID (SPID)。

结果集

DBCC INPUTBUFFER 返回包含如下列的行集。

列名

数据类型

描述

EventType

nvarchar()

事件类型,例如:RPC、语言或无事件。

Parameters

Int

0 = 文本 1- n = 参数

EventInfo

nvarchar()

对于 RPC 的 EventType,EventInfo 仅包含过程名。对于语言或无事件的 EventType,仅显示事件的头 个字符。

例如,当缓冲区中的最后事件是 DBCC INPUTBUFFER() 时,DBCC INPUTBUFFER 将返回以下结果集。

EventType Parameters EventInfo -------------- ---------- ---------------------Language Event 0 DBCC INPUTBUFFER ()(1 row(s) affected)

数据库触发器DB2和SqlServer有哪些区别 大部分数据库语句的基本语法是相同的,但具体到的每一种数据库,又有些不一样,例如触发器,DB2和SQLServer两种很大的不同。例如DB2的一个触发器:CR

SQL获取第一条记录的方法(sqlserver、oracle、mysql数据库) Sqlserver获取每组中的第一条记录在日常生活方面,我们经常需要记录一些操作,类似于日志的操作,最后的记录才是有效数据,而且可能它们属于不同

sqlserver四舍五入使用round函数及cast和convert函数 引言今天和测试沟通一个百分比计算方式时遇到一个问题,我在存储过程里用到了强转CAST(.ASDECIMAL(5,1))我认为该方式只会保留一位小数,我给测试的

标签: sql server异常怎么处理

本文链接地址:https://www.jiuchutong.com/biancheng/312146.html 转载请保留说明!

上一篇:SQL语句执行顺序详解(sql执行顺序优先级)

下一篇:SQL Server 2008还原数据库的方法(sqlserver2008还原数据库 错误3624)

  • 期末未缴税额出现负数
  • 项目异地预缴附加税会计分录是?
  • 进项税额转出会计分录月末如何结转
  • 房产税相关问题
  • 汽车运输企业付给车主的运费算成本吗
  • 应交税费为什么记借方
  • 公共汽车出租车
  • 哪些费用类专票可以抵扣
  • 转租房产税计税依据
  • 测试费明细
  • 小企业出租设备分录
  • 公司工会的主要职能是
  • 开发票商品类别与商品明细的区别
  • 发放股票股利增资
  • 房屋买卖终止协议
  • 工业企业外购存货的入账价值一般包括增值税吗
  • 老板垫付的费用怎么做凭证
  • 没有实收资本是负债吗
  • 收到发票冲预付账款摘要怎么写
  • 柴油可以销售吗
  • 采购合同中含税金额
  • 案例分析改变,从三块板开始
  • 土地增值税的纳税人是在我国境内
  • 新药从开发到生产的流程
  • 涉嫌虚开发票的几种情况
  • 金针菜的养殖方法和技术
  • linux系统如何更改主机名
  • 股东股权折价转让会计分录
  • 重装win7系统鼠标键盘没反应
  • ipad哪款最贵
  • php5.4升级到php7
  • php和mysql web开发怎么样
  • 无线路由器wifi指示灯不亮
  • 债券溢折价是什么意思
  • 应收账款减值损失的核算方法
  • php有面向对象吗
  • 向银行借入长期借款200000元,存入银行
  • 应交城建税怎么算
  • 阿里月薪3万到手多少
  • 行政性收费和事业性收费 财政局
  • 现金流量表季报本月数是三个月的数据吗
  • 开票提示未安装控件
  • 发票抬头为个人的纳税人识别号
  • 帝国cms如何使用
  • 消费税计算的三种形式
  • win7系统安装教程不用u盘
  • 提高资产利用率的例子
  • 汽车4s店收到保险佣金做账
  • 小规模公司销项发票税额记到哪里了
  • 工资挂账怎样做账
  • 一般纳税人购买汽车会计分录
  • 小规模纳税人所得税怎么计算
  • 营改增是从什么时候开始实施的
  • 主营业务税金及附加借贷方向
  • 公司收入和开支比例
  • 出口发票上的汇票是什么
  • 支付金额和实付金额的区别
  • 转账支票一定要填写支付密码吗?
  • 货款还没收到有违法所得吗
  • 购进中央空调可以抵税吗
  • 总账会计的岗位目的
  • 数据库优化的作用是什么?
  • windowsserver2016安装完成后怎么是命令模式
  • 禁用windows杀毒
  • Ubuntu上安装jdk
  • 在linux操作系统中
  • windows万能wifi
  • win7怎么取消开机选择系统
  • unity自动攻击
  • unity3d读取gis数据
  • 照片墙安装教程
  • android图像处理
  • dos的命令大全
  • node.js用途
  • java编程基础知识入门
  • 细说java
  • unityui
  • 多线程python爬虫
  • python查找列表中的元素
  • 烟叶处理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设