我的SQL进程里 经常出现死锁 和堵塞现像怎么解决!!!

kaxi 2003-12-16 11:00:09
到晚上访问量高的时间 就会出现
程序 怎么优化 还有系统优化配置 都需要注意哪些事项 请高手指教
说下大家的经验 或共同讨论
...全文
84 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
cgsun 2003-12-17
  • 打赏
  • 举报
回复
SQL事件探查器
识别死锁原因
例如,可以创建一个跟踪来捕获与 TSQL 和 Stored Procedure 事件类(RPC:Starting 和 SQL:BatchStarting)以及 Locks 事件类(Lock:Deadlock 和 Lock:Deadlock Chain)相关的事件。在这个跟踪内包括所有数据列并按 Event Class 分组。如果想一次只监视一个数据库,为 Database ID 事件准则指定一个值。

若要查看死锁所涉及的连接,执行下列操作之一:

打开包含捕获的数据的跟踪,按 ClientProcessID 将数据分组并展开死锁所涉及的两个连接。


将捕获的数据保存到一个跟踪文件,然后打开这个跟踪文件两次,使其显示在两个单独的 SQL 事件探查器窗口内。按 ClientProcessID 将捕获的数据分组,然后展开死锁所涉及的进程 ID;每个死锁连接都在一个单独的窗口内。平铺窗口以查看导致死锁的事件。
txlicenhe 2003-12-17
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/TopicView1.asp?id=2455540
主  题: SQLServer调优
作  者: pengdali (大力 V3.0)


性能优化:
http://expert.csdn.net/Expert/topic/2331/2331693.xml?temp=.6327021
txlicenhe 2003-12-17
  • 打赏
  • 举报
回复
死锁可以查一下:
1:sp_who 或 sp_who2
2: Select * from sysprocesses where blocked <> 0
3: 企业管理器->服务器->管理工具->活动->当前活动 然后把他kill掉。。。
进程信息中,如果发现旁边有一个锁状的图标,就表明这个进程是死锁,kill掉
4:SQL事件探查器,监控一下,看主要是那些处理引起的死锁.然后做相应的处理.
用事件探查器new一个trace,监视一下造成你sqlserver停顿的情况。。。

最好的办法还是检查一下引起锁的原因,一般是由你的代码引起的。

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧