top

笔记41-徐 阻塞与死锁

笔记41-徐 阻塞与死锁

复制代码
 1 --阻塞与死锁
 2 
 3 --对于一个多用户数据库系统,尤其是大量用户通过不同应用程序同时访问同一个数据库的系统
 4 --如果发生一个或多个以下现象,管理员就应该检查是否遇到了阻塞或者死锁了
 5 --(1)并发用户少的时候,一切正常。但是随着并发用户的增加,性能越来越慢
 6 
 7 --(2)客户端经常收到以下错误
 8 --错误1222
 9 --已经超过了锁请求超时时段
10 
11 --错误1205
12 --事务(进程ID XXX)与另一个进程被死锁在XX资源上,并且已被选作死锁牺牲品。请重新运行
13 --该事务
14 
15 
16 --超时错误
17 --timeout expired.the timeout period elapsed prior to completion of the operation or
18 --the server is not responding
19 
20 --(3)应用程序运行很慢,但是SQL这里CPU和硬盘利用率很低。DBA运行sp_who或sp_who2这样
21 --的短小命令很快返回
22 
23 --(4)有些查询能够进行,但是有些特定的查询或修改总是不能返回
24 
25 --(5)重启SQL就能解决。但是有可能跑一段时间以后又会出问题
26 
27 
28 --锁在一个连接里的生命周期是和事务的生命周期紧密相连的,数据结构不同,SQLSERVER需要申请的锁
29 --的数量也会不同
30 
31 
32 --造成阻塞和死锁的3大原因:
33 --1连接持有锁时间过长
34 --2锁数目过多
35 --3锁粒度过大
复制代码

 

posted @   桦仔  阅读(619)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示