“死锁受害者”在交易中,如何更改优先级? [英] "deadlock victim" in transaction, how to change the priority?
问题描述
我已记录ASP.NET应用程序引发的异常。
i have logged an exception thrown by an ASP.NET-Application.
消息:事务(进程ID 56)
被锁定死锁|通信
与另一个进程
缓冲资源,并被选择为死锁
受害者。重新运行事务。
Message: Transaction (Process ID 56) was deadlocked on lock | communication buffer resources with another process and has been chosen as the deadlock victim. Rerun the transaction.
我确定其原因是,我正在运行某些选择
直接在同一时间在应用程序中查询的表上的SSMS中。
I'm sure that the reason for it was, that i was running some selects
directly in SSMS on tables that were queried in the application in the same time.
所以现在我的问题是:
- 我可以更改SQL Server选择死锁受害者的优先级吗?我想选择我自己(SSMS)作为死锁受害者,而不是ASP.NET,因为它是时间紧迫的应用程序,对于我来说,重新运行手动查询比让用户接受错误要容易得多。
谢谢。
推荐答案
< a href = http://msdn.microsoft.com/zh-cn/library/ms186736%28SQL.90%29.aspx rel = noreferrer>设置DEADLOCK_PRIORITY 可让您微调优先级
您可以在SSMS会话中(每个查询窗口)或全局进行指定:
You can specify this in your SSMS session (per query window) or globally:
这篇关于“死锁受害者”在交易中,如何更改优先级?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!