社区
应用实例
帖子详情
数据库阻塞、性能问题
luckds
2004-05-13 12:06:12
请问各位老师:
好!!
我维护的数据库很容易出现阻塞 (sp_who blk)客户端出现查询、保存
不响应
我是新手, 想查询时用NOLOCK 因为用了 好象性能是要好一些 但是又害怕 脏数据的读取,我现在不知道怎么办了
请介绍一下 NOLOCK 的使用注意事项
请各位老师 给我点建议!!!
我在线 等待 !
谢谢
...全文
115
2
打赏
收藏
数据库阻塞、性能问题
请问各位老师: 好!! 我维护的数据库很容易出现阻塞 (sp_who blk)客户端出现查询、保存 不响应 我是新手, 想查询时用NOLOCK 因为用了 好象性能是要好一些 但是又害怕 脏数据的读取,我现在不知道怎么办了 请介绍一下 NOLOCK 的使用注意事项 请各位老师 给我点建议!!! 我在线 等待 ! 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
luckds
2004-05-13
打赏
举报
回复
zjcxc(邹建) 老师:
谢谢您!
是这样的 我仅仅只是维护、管理 (初级人员) 您说的那些 我可能只是 知道一点
或者完全不知道。
我希望能得到您的帮助!
我们的业务系统是集中式的C/S系统,工作站有远程的 通过VPN 连接,网络问题排除不处理,经常看到有BLK 的现象,我希望能将 存储过程中 查询大数据量表的时候 能加上(NOLOCK) 我自己分析了一下 脏数据的可能性很小 应该可以忽略掉
我现在想知道 NOLOCK 是不是 有这样的 作用 或者 功能吧
因为我现在把握不了 因为是查询 应该是共享琐 对吗 呵呵 我自己在书上看到的
就是 这些地方 我不清楚
希望您能帮助我
谢谢 !!!
zjcxc
2004-05-13
打赏
举报
回复
将死锁减至最少
虽然不能完全避免死锁,但可以使死锁的数量减至最少。将死锁减至最少可以增加事务的吞吐量并减少系统开销,因为只有很少的事务:
回滚,而回滚会取消事务执行的所有工作。
由于死锁时回滚而由应用程序重新提交。
下列方法有助于最大限度地降低死锁:
按同一顺序访问对象。
避免事务中的用户交互。
保持事务简短并在一个批处理中。
使用低隔离级别。
使用绑定连接。
按同一顺序访问对象
如果所有并发事务按同一顺序访问对象,则发生死锁的可能性会降低。例如,如果两个并发事务获得 Supplier 表上的锁,然后获得 Part 表上的锁,则在其中一个事务完成之前,另一个事务被阻塞在 Supplier 表上。第一个事务提交或回滚后,第二个事务继续进行。不发生死锁。将存储过程用于所有的数据修改可以标准化访问对象的顺序。
避免事务中的用户交互
避免编写包含用户交互的事务,因为运行没有用户交互的批处理的速度要远远快于用户手动响应查询的速度,例如答复应用程序请求参数的提示。例如,如果事务正在等待用户输入,而用户去吃午餐了或者甚至回家过周末了,则用户将此事务挂起使之不能完成。这样将降低系统的吞吐量,因为事务持有的任何锁只有在事务提交或回滚时才会释放。即使不出现死锁的情况,访问同一资源的其它事务也会被阻塞,等待该事务完成。
保持事务简短并在一个批处理中
在同一数据库中并发执行多个需要长时间运行的事务时通常发生死锁。事务运行时间越长,其持有排它锁或更新锁的时间也就越长,从而堵塞了其它活动并可能导致死锁。
保持事务在一个批处理中,可以最小化事务的网络通信往返量,减少完成事务可能的延迟并释放锁。
使用低隔离级别
确定事务是否能在更低的隔离级别上运行。执行提交读允许事务读取另一个事务已读取(未修改)的数据,而不必等待第一个事务完成。使用较低的隔离级别(例如提交读)而不使用较高的隔离级别(例如可串行读)可以缩短持有共享锁的时间,从而降低了锁定争夺。
使用绑定连接
使用绑定连接使同一应用程序所打开的两个或多个连接可以相互合作。次级连接所获得的任何锁可以象由主连接获得的锁那样持有,反之亦然,因此不会相互阻塞。
数据库
性能
瓶颈优化实用脚本
1.tempdb扩容脚本.sql 2.查看没有实用的索引.sql 3.查看
数据库
IO
性能
.sql 4.查询
数据库
消耗IO排行.sql(非常实用) 5.查询查询
阻塞
.sql
数据库
性能
优化工具.zip
数据库
性能
优化工具.
性能
优化,索引优化,死锁
阻塞
查询,异步
数据库
传输,文件组分区,分区函数分区,创建、升级
数据库
,Sql邮件,SqL字符串操作,数据校验,数据中备份与还原。
sql server
性能
优化和日常管理维护
课程总结sql server运行过程中对系统资源的使用和由此产生
性能
问题
,介绍
数据库
规划设计、事务和锁的基本知识,如何处理
阻塞
和死锁,优化索引和读懂统计信息和执行计划等知识,同时详细介绍SQL 2014新功能特性内存优化表、列存储索引、alwayOn高可用。
SQLServer
数据库
应用程序
性能
优化方法
:为提高基于SQL Server
数据库
应用程序的执行效率,分析了SQL Server
数据库
系统自身的查询优化处理技术,总结 出多种基于SQL Server
数据库
的应用程序
性能
优化方法:选择
性能
优越的服务器;优化
数据库
设计;使用查询效率较高的查 询语句;使用存储过程;有效的使用事务和批处理;避免
阻塞
;选择合适的开发工具和采用有效的
数据库
访问技术。
Oracle10g
性能
分析与优化思路
第1章 引起
数据库
性能
问题
的因素 第2章 锁和
阻塞
第3章 Latch和等待
应用实例
27,580
社区成员
68,556
社区内容
发帖
与我相关
我的任务
应用实例
MS-SQL Server 应用实例
复制链接
扫一扫
分享
社区描述
MS-SQL Server 应用实例
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章