Sql-Server

指定的網路名稱不再可用

  • December 10, 2020

我們有一個訪問數據庫的應用程序(Sql server 2014 企業版)。應用程序呼叫儲存過程來訪問數據庫。一切正常,直到最近開始發送以下錯誤並停止應用程序。重新啟動應用程序可以暫時解決問題,但稍後會遇到相同的錯誤。

錯誤:從伺服器接收結果時發生傳輸級錯誤。(提供者:TCP 提供者,錯誤:0 - 指定的網路名稱不再可用。)

我做了很多研究,其中大多數人指出是網路問題,但找不到任何可以真正解決問題的東西。有誰知道我應該在數據庫方面做出什麼改變來解決這個問題。我非常感謝任何建議。

聽起來像是參差不齊的 DNS 解析問題或長時間執行的查詢。

用於 DNS 故障排除

作為創可貼和故障排除幫助,添加並進入您的應用伺服器(不是 SQL Server)上的主機文件,位於 c:\windows\system32\drivers\etc

SQLServerIPAddress SQLServerName

例子:

172.16.0.5 ProductionSQLBox

這樣,主機文件將解析 SQL Server 名稱,直到您找到名稱解析的真正問題為止。

確保通過命令行從應用伺服器 ping SQL 框來測試主機文件。或者,也可以使用控制面板中的 ODBC 管理器創建一個 DSN,並在那裡測試連接。

對於長時間執行的查詢

為連接到 SQL Server 的應用程序連接字元串實現更長的命令超時值

例子

<connectionStrings> 
   <add name="webconfigconnectionString" connectionString="server=SQLServerName;database=dbName;uid=u‌​serName;password=ABC‌​123;Connect Timeout=120" />
</connectionStrings>

這不是數據庫問題。數據庫端沒有可以解決此問題的更改。此錯誤是由高網路頻寬或您的應用程序中的錯誤引起的。我建議您將此錯誤轉發給您公司的 Wintel/網路團隊。他們可以更改網路交換機或管理網路頻寬以阻止此錯誤。

引用自:https://dba.stackexchange.com/questions/149539