回答
这将显示与正在举行独占锁的所有数据库(其可以包括在此运行时间保持短暂的),使用sys.dm_tran_locks
DMV:
select d.*, l.* from sys.dm_tran_locks l
join sys.databases d on l.resource_database_id = d.database_id
where l.request_mode = 'X'
(X =独占,S =共享, IS =意图共享)请参阅Lock Modes。
不过,也许最好的办法是打开跟踪标志1204和1222:
跟踪标志1204和跟踪标志1222 当死锁发生时,跟踪标志1204 和跟踪标志1222返回信息 即在SQL Server 2005错误日志中捕获。跟踪标志1204 报告由死锁中涉及的每个节点格式化的死锁信息 。 跟踪标志1222格式死锁 信息,首先由进程和 然后由资源。有可能 启用两个跟踪标志来获得两个 表示相同的死锁 事件。
价:Detecting and Ending Deadlocks
此外,运行sp_who2
和寻找在BlkBy
(阻塞者)列中的条目;遵循这些直到你到达僵局链的头部。这是进程标识符(或PID)的责任。
得到什么SQL是落后于特定的过程中,你可以运行:
dbcc inputbuffer (@pid)
,并使用PID终止该进程(谨慎和风险自负):
kill @pid
退房Who is Active? v10.00: DMV Monitoring Made Easy
又读Blocking is not Deadlocking(区分两种情形)
BlkBy列究竟意味着什么与事务相关的事务由于表已被锁定。以及如何使用PID来终止进程。当我执行“sp_who2”时,我能够SPID列名 – 2010-12-16 10:11:05
sys.dm_tran_locks.request_mode对S,IS和X的含义与上面的查询中一样。你能描述一下吗? – 2010-12-16 10:30:02
@K Maheshwar Rao:这是有帮助的如何关于一些upvote爱? – 2010-12-16 10:35:41
- 1. 如何处理锁定(JPA)?
- 2. 匿名任务锁定
- 3. 两相锁定事务处理中的死锁
- 4. Cordova处理浏览器特定任务
- 5. 处理特定表单的事件
- 6. 如何查找用于OpenACC的特定PGI函数的签名?
- 7. 如何查找哪个事务导致“等待表元数据锁定”状态?
- 8. 只读事务表锁定
- 9. 数据库如何锁定表仅用于具有特定值的特定INSERT?
- 10. Odoo如何处理数据库锁定?
- 11. 锁定Java任务
- 12. 在'任意列'中查找具有特定值的表名称
- 13. 任何类似于锁定的宝石?
- 14. 如何在SQL链接服务器中查找具有特定名称的表?
- 15. Silverlight调度器锁定,停止队列中的处理任务
- 16. 如何编写南特任务的自定义南特任务
- 17. 将选择最大(字段)下的事务锁定任何行?
- 18. 绑定事件处理程序到任何可能的事件
- 19. 如何实现特定任务的Listner?
- 20. 如何覆盖特定任务的ansible_become?
- 21. COM:如何处理特定的异常?
- 22. 如何查找文件名的特定部分/扩展名?
- 23. 如何处理ETL任务?
- 24. 查找特定类从任何给定的模块
- 25. SharePoint 2007 - 绑定特定列表的事件处理程序
- 26. 如何用jQuery找到某些特定的事件处理程序?
- 27. NServiceBus如何处理事务?
- 28. 如何处理Java中的事务锁(Postgresql)
- 29. 与表锁定的Mysql事务
- 30. MSSQL中的事务是否锁定表
真的没有必要把你的主题作为你的问题的第一行 - 我们都阅读它。另外,你不需要大写字母,它只是使阅读变得困难。 – Robert 2010-12-16 09:30:19