当前位置:首页 > 系统运维 > 正文内容

常见的SQL Server阻塞情形有哪些?

a8116255316年前 (2010-07-20)系统运维8

以下的文章主要描述的是常见的SQL Server阻塞情形,在实际操作中SQL Server阻塞是经常出现的,那么它们会以什么形式出现的呢?以下的文章主要就是针对这一问题给出的答案,以下就是主要内容描述。

1 .提交执行时间长的查询。

长时间运行的查询会阻塞其它查询。例如,影响很多行的 DELETE 或 UPDATE

操作能获取很多锁,这些锁不论是否升级到表锁都阻塞其它查询。因此,一般不要将长时间运行的决策支持查询和联机事务处理 (OLTP)

查询混在一起。解决方案是想办法优化查询,如更改索引、将大的复杂查询分成简单的查询或在空闲时间或单独的计算机上运行查询。

2 .查询不适当地使用游标。游标可能是在结果集中浏览的便利 *** ,但使用游标可能比使用面向 *** 的查询慢。

3 .取消没有提交或回滚的查询。

假如应用程序取消查询(如使用开放式数据库连接 (ODBC) sqlcancel 函数)但没有同时发出所需数目的 ROLLBACK 和 COMMIT 语句,则会发生这种情况。取消查询并不自动回滚或提交事务。取消查询后,所有在事务内获取的锁都将保留。应用程序必须提交或回滚已取消的事务,从而正确地管理事务嵌套级。

4 .应用程序没处理完所有结果。

将查询发送到服务器后,所有应用程序必须立即完成提取所有结果行。假如应用程序没有提取所有结果行,锁可能会留在表上而阻塞其他用户。假如使用的应用程序将Transact-SQL 语句透明地提交给服务器,则该应用程序必须提取所有结果行。

假如应用程序没这样做(假如无法配置它执行此操作),则可能无法解决阻塞问题。为避免此问题,可以将这些应用程序限制在报表或决策支持数据库上。

5 .分布式客户端/服务器死锁。

与常规死锁不同,分布式死锁无法由 Microsoft SQL Server 2000 自动检测到。假如应用程序打开多个与 SQL Server 的连接并异步提交查询,则可能会发生分布式客户端/服务器死锁。

例如,一个客户端应用程序线程有两个开放式连接。该线程异步启动事务并在之一个连接上发出查询。应用程序随后启动其它事务,在另一个连接上发出查询并等待结果。当 SQL Server 返回其中一个连接的结果时,应用程序开始处理这些结果。

应用程序就这样处理结果,直到生成结果的查询被另一个连接上执行的查询阻塞而导致再没有可用的结果为止。此时之一个连接阻塞,无限期等待处理更多的结果。第二个连接没有在锁上阻塞,但仍试图将结果返回给应用程序。然而,由于应用程序阻塞而在之一个连接上等待结果,第二个连接的结果将得不到处理。

以上的相关内容就是对常见的SQL Server阻塞情形的介绍,望你能有所收获。

上述的相关内容就是对常见的SQL Server阻塞情形的描述,希望会给你带来一些帮助在此方面。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://2345hao.cn/blog/index.php/post/22110.html

分享给朋友:

“常见的SQL Server阻塞情形有哪些?” 的相关文章

windows 7鼠标停顿怎么办?windows 7 usb鼠标停顿的原因以及解决

windows 7鼠标停顿怎么办?windows 7 usb鼠标停顿的原因以及解决

很多使用Windows 7系统的朋友都想小编反应,假如暂停使用电脑,鼠标会出现停顿现象,这是怎么回事呢 该怎么解决呢 下面就和小编一起去看下Windows 7 usb鼠标停顿的解决方法吧。 由于Windows 7系统中有一项USB选择性暂停造成的。这项设置主要为了节电,当他检测到用户没有对系统进行...

windows 7/8.1正在启动windows时间长的解决方法

windows 7/8.1正在启动windows时间长的解决方法

正在启动windows时间长怎么办 小编带来了Windows 7/8.1正在启动windows时间长解决方法,假如有朋友在安装完Windows系统之后一直停留在“正在启动windows”的话,不妨试一试下文的方法哦~ 原因:Windows 7/8.1不完全支持UEFI,需要CSM(Comp...

windows 7系统的电脑发出嘟嘟嘟的声音该怎么解决?

windows 7系统的电脑发出嘟嘟嘟的声音该怎么解决?

在某些电脑中,机器内部蜂鸣器与系统的声音输出方案是相关联的,这样一来会导致当系统输出声音时,即使电脑没有连接外部音响或耳机,也会通过内置蜂鸣器发出“嘟嘟哔哔”的声音。这个问题主要出现在Windows 7电脑中,假如你的电脑恰好遇到了这样的问题,可参考下面的方法来解决: 1、在桌面“计算机”图标上右...

微软今天正式停止对windows 7的主流支持

微软今天正式停止对windows 7的主流支持

北京时间1月13日消息,根据计划,微软将于2015年1月13日正式结束对Windows 7SP1的“主流支持”,而这也标志着“扩展支持”阶段的开始,这个阶段将于2020年1月14日结束。 2013年10月份,微软终止销售独立的Windows 7系统安装包,并要求制造商于2014年10月份停止生...

Skylake平台不能通过USB接口装windows 7系统

Skylake平台不能通过USB接口装windows 7系统

Intel会在2015年推出Broadwell、Skylake两代14nm处理器,前者可以使用9系芯片组,Skylake升级到了LGA1151插槽,需要搭配新的100系列芯片组,但初期的Skylake-S又不能超倍频,所以今年Q2季度开始会很混杂。Skylake一代会支持DDR4,100系列芯片组升...

windows 7系统件夹和文件都不显示名字如何解决

windows 7系统件夹和文件都不显示名字如何解决

假如碰到电脑里的文件夹和文件全都不显示名字了(如下图),是不是电脑中毒了呢 请教下笔者有没好的解决方法!下面是笔者给出的答案,希望能够帮助到大家! 首先打开你用来装图片的文件夹(缩略图下面的文字不显示的文件夹),然后但击工具栏上的“查看”选择“平铺”, 下面就是关键:要按住SHIFT键不...