Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 死锁,与数据库的连接已断开_Sql_Sql Server - Fatal编程技术网

Sql 死锁,与数据库的连接已断开

Sql 死锁,与数据库的连接已断开,sql,sql-server,Sql,Sql Server,我有一个应用程序正在连接到SQL server以运行一些插入/更新。我们已经遇到了死锁,但我注意到除了报告死锁之外,与数据库的连接也会断开,客户端必须重新连接 这正常吗?即使这不是正常行为,SQL server是否可能不仅决定我的客户机将成为死锁受害者,而且还会终止连接 有没有办法停止断开的连接?根据定义,死锁意味着两个连接被卡住,其中SPID 1锁定了SPID 2需要的东西,而SPID 2锁定了SPID 1需要的东西。两人都无法完成交易,因为他们需要对方锁定的东西。在这种情况下,服务器将选择一

我有一个应用程序正在连接到SQL server以运行一些插入/更新。我们已经遇到了死锁,但我注意到除了报告死锁之外,与数据库的连接也会断开,客户端必须重新连接

这正常吗?即使这不是正常行为,SQL server是否可能不仅决定我的客户机将成为死锁受害者,而且还会终止连接


有没有办法停止断开的连接?

根据定义,死锁意味着两个连接被卡住,其中SPID 1锁定了SPID 2需要的东西,而SPID 2锁定了SPID 1需要的东西。两人都无法完成交易,因为他们需要对方锁定的东西。在这种情况下,服务器将选择一个受害者SPID并杀死它,以便另一个可以完成其事务

阻止它的唯一方法是首先找出死锁发生的原因。您可以运行跟踪来监视死锁,并将与死锁相关的信息捕获到图表中,然后在SSMS中查看该图表


此处提供的更多信息:

进一步调查后,连接似乎只在更新时断开,而不是查询这是怎么回事?这有助于信息很好地开始一些调查。