0

我試圖在我的應用程序中識別SQL連接泄漏。經過一些操作後,當我的應用程序空閒時(用戶沒有做任何活動),我在sp_who2返回的結果集中看到7個與我的數據庫的連接。所有連接的狀態爲SleepingCommand所有連接的值爲AWAITING COMMANDSQL Server連接處理,連接池,生存期和泄漏連接

我正在使用連接池,但未在連接字符串中指定Connection Lifetime。這意味着如果我是對的,它將使用默認值0。具有值零的連接生命期意味着SQL服務器不應該關閉連接,對吧?

我將應用程序閒置了一段時間(15-20分鐘),然後看到sp_who2沒有顯示與我的數據庫有任何連接。我想知道爲什麼當連接生命期爲零時我得到這個結果。 無論連接生存期值如何,SQL Server在一段時間後終止未使用的連接?

如何識別哪個連接由於泄漏而打開以及哪些連接由於連接池而懸掛?

我的應用程序支持SQL Server 2008,2014和2016.它是ASP.NEt應用程序。

回答