首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

mssql数据库频繁操作死锁,怎么解决,有跟踪日志,哪位高手能帮小弟我分析下死锁的原因和怎么解决呢

2012-05-30 
mssql数据库频繁操作死锁,如何解决,有跟踪日志,谁能帮我分析下死锁的原因和如何解决呢数据库有一个中端表,

mssql数据库频繁操作死锁,如何解决,有跟踪日志,谁能帮我分析下死锁的原因和如何解决呢
数据库有一个中端表,每个中端都要频繁的更新最后连接时间,语句都是单条的select和update,没有做事物,没有涉及多个表,但是大量的死锁下面的跟踪截图.

我不清楚这2个发生死锁的资源,是什么,我只对一个表select或update
请指教

[解决办法]
典型的同时持有资源,得不到释放。

先从流程上是否可以解决,最后考虑事务的锁级别。
[解决办法]
只有RID,没建立索引?
还有UPDATE 更新的顺序要一致,如果一下1,2, 另一下2,1,当然就像你上面的,二者等待了
[解决办法]
with (nolock) 这样看行不
[解决办法]
1.检查程序连线数据库的参数是什么,改为默认值试试.

2.查询语句(select)可以在表名后加(nolock).
[解决办法]
使用行级锁,每个进程只对需要更新的行加锁

SQL code
update tb with (rowset) set colname=value
[解决办法]

上面的命令写错啦,
使用行级锁,每个进程只对需要更新的行加锁

SQL code
update tb with (rowlock) set colname=value
[解决办法]
探讨

update Account set lastConTime='2012-1-1 10:10:10' where Account='133333'
update Account set lastConTime='2012-1-1 10:10:14' where Account='144444'引用:
楼主提供下产生死锁的两个T-SQL内容,来进一……

[解决办法]
SQL code
这两个结果贴出来看看sp_helpindex Account sp_spaceused Account下面这个的执行计划贴出来看看update Account set lastConTime='2012-1-1 10:10:10' where Account='133333' 

热点排行