首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL Server 2005 SP死锁问题

问SQL Server 2005 SP死锁问题
EN

Stack Overflow用户
提问于 2009-08-11 15:01:30
回答 2查看 1.9K关注 0票数 0

我有一个计划的作业,其中一个SP每天都在运行(SQL Server 2005)。最近我经常遇到这个SP的死锁问题。以下是错误消息:

代码语言:javascript
复制
Message
Executed as user: dbo. Transaction (Process ID 56) was deadlocked on thread | 
communication buffer resources with another process and has been chosen as the deadlock 
victim. Rerun the transaction. [SQLSTATE 40001] (Error 1205).  The step failed.

SP对一些表使用了一些互连视图,其中之一是具有数百万行数据的大型数据表(并且还在不断增长)。我不确定对表的任何作业或查询是否会导致表无法访问SP?我要用query调查一下谁在线了。这可能会在此期间暴露SQL server上某些查询或人员。

不确定是否有人有类似的问题,或者这是已知的SQL 2005问题?为了避免死锁,我应该在SP或SQL server上执行任何其他操作吗?

EN

回答 2

Stack Overflow用户

发布于 2009-08-11 15:08:34

使用SQL Server Profiler跟踪正在运行的所有查询。我将输出放入SQL Server中。这将帮助您找出哪些表正在访问您的特定表。发布你的发现,我们可以帮助你。

票数 1
EN

Stack Overflow用户

发布于 2009-08-11 15:44:55

死锁是指两个事务各自持有一些资源,并想要另一个事务也拥有的资源--这两个事务都不能继续,因为它们都在等待对方。它们不能被完全消除,但可以做很多事情来减轻它们。Remus和Raj建议在Profiler中捕获更多关于它们的信息-我也建议-通常优化您的查询(如果您知道涉及哪些查询)也会有所帮助。这里有一篇MSDN文章可以帮助你上手:"Minimizing Deadlocks“。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1260931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档