数据库A上的大事务将数据库B锁定在同一服务器上

时间:2013-10-17 07:07:12

标签: sql-server transactions database-performance

我在Sql Server 2012上运行了多个数据库。

我必须在此服务器上运行一个大型导入脚本。导入脚本包装了一个事务。它还调用链接的Sql Server 2008服务器来提取数据。

当我运行此导入脚本时,所有请求的其他数据库超时。

调试此方法的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

  

所有请求的其他数据库超时

SQL Server不会超时请求。您的客户端是否中止,通常是因为SqlCommand.CommandTimeout默认为30秒。话虽如此,您仍然存在性能问题,因此将其视为性能问题。阅读Waits and Queues以了解如何识别SQL Server中的瓶颈。阅读The Data Loading PErformance Guid以了解如何正确导入(提示:它不会是'在事务中进行大量导入')。

这与'lock'无关。

答案 1 :(得分:0)

将问题追溯到服务器上RAM真的很低。添加了更多RAM,导入完成得很好,所有其他数据库都运行不受影响。