是否存在可以运行的方法或存储过程或查询,以获取先前在数据库上运行并且是锁定表的所有查询/事务的列表。
我正在研究进行分析以查看哪些事务正在锁定哪些表。
答案 0 :(得分:0)
这似乎是一个更棘手的问题。
关于锁定的历史数据,只要我们不谈论"查询商店"或其他一些可被视为"外部"的技术,由DMV sys.dm_db_index_operational_stats累积。
这种DMV相对稳定。但它的对应sys.dm_exec_procedure_stats一旦有特定的计划就会有改变的倾向,这可能会积累一些有趣的"数据,重新编译。
随着统计变化率的提高,累积数据的这种瞬态特性趋于更加明显。所以,你可以看到有时(甚至大多数时候)你可能无法使用来自** stats系列的DMV获得锁定与其原因之间的确切联系,但是知道如何发生遗漏,你有一些信息要做好判断。
添加sys.sql_dependencies链接锁定受影响的对象和过程,这是一个起点。
请注意*** stats DMV系列的其他资源: