我可以通過修改web.config
中的連接字符串來增加超時嗎?SQL服務器的連接超時
回答
是的,你可以追加;Connection Timeout=30
您connection string並指定希望的值。
Connection Timeout
屬性中設置的超時值是時間,以秒爲單位。如果未設置此屬性,則連接的超時值爲默認值(15秒)。
此外,將超時值設置爲0
,您指定您的連接嘗試等待無限時間。如文檔中所描述的,這是後話,你不應該在連接字符串中設置:
值爲0表示沒有限制,並且應該以 的ConnectionString避免,因爲試圖無限期地等待連接。
嗯...
正如達林說,你可以指定一個較高的連接超時值,但我懷疑這是真正的問題。
當你連接超時,它通常具有以下的一個問題:
網絡配置 - 你的web服務器的/ dev框和SQL服務器之間的連接速度很慢。增加超時時間可能會糾正這種情況,但調查潛在問題是明智之舉。
連接字符串。我遇到了一些問題,出於某種原因,不正確的用戶名/密碼會出於某種原因發出超時錯誤,而不是真正的錯誤,指示「訪問被拒絕」。這不應該發生,但這就是生活。
連接字符串2:如果您錯誤地或不完整地指定了服務器的名稱(例如,
mysqlserver
而不是mysqlserver.webdomain.com
),則會發生超時。您能否使用服務器名稱來嚴格按照命令行中的連接字符串中的指定來ping服務器?連接字符串3:如果服務器名稱在您的DNS(或主機文件)中,但指向錯誤或無法訪問的IP,您將得到超時而不是機器未發現的ish錯誤。
您打電話的查詢超時。它可能看起來像連接到服務器是問題,但根據您的應用程序的結構,您可以在超時發生之前將它一直髮送到執行查詢的階段。
連接泄漏。有多少個進程正在運行?多少個開放連接?我不確定原始的ADO.NET是否執行連接池,在必要時自動關閉連接ala Enterprise Library,或者所有配置的位置。這可能是一個紅鯡魚。但是,在使用WCF和Web服務時,我遇到了導致超時和其他不可預知行爲的未關閉連接的問題。
事情嘗試:
你得到一個超時連接到使用SQL Management Studio中的服務器時?如果是這樣,網絡配置可能是問題。如果連接Management Studio時看不到問題,則問題將出現在您的應用程序中,而不是服務器中。
運行SQL事件探查器,查看實際發生的事情。你應該能夠知道你是否真的連接,或者如果查詢是問題。
在Management Studio中運行您的查詢,並查看需要多長時間。
祝你好運!
如果要動態更改它,我更喜歡使用SqlConnectionStringBuilder。
它允許您將ConnectionString(即字符串)轉換爲類Object,所有連接字符串屬性將成爲其成員。
在這種情況下,真正的優點是您不必擔心ConnectionTimeout字符串部分是否已經存在於連接字符串中?
另外,因爲它創建一個對象,它總是很好的在對象中賦值,而不是操縱字符串。
下面是代碼示例:
var sscsb = new SqlConnectionStringBuilder(_dbFactory.Database.ConnectionString);
sscsb.ConnectTimeout = 30;
var conn = new SqlConnection(sscsb.ConnectionString);
- 1. PHP,MSSql服務器連接超時
- 2. PHP:腳本超時服務器連接
- 3. Javamail服務器連接超時
- 4. 連接超時爲NX服務器
- 5. 設置sql服務器連接時登錄超時過期
- 6. 的FileZilla連接超時,錯誤連接到服務器
- 7. MS Sql服務器超時
- 8. SQL服務器超時
- 9. 與SQL服務器連接時出錯
- 10. SQL服務器uft8連接
- 11. 內連接 - SQL服務器
- 12. sql服務器外連接?
- 13. SQl連接和服務器連接
- 14. TSocket:無法連接到服務器(連接超時[110])
- 15. heroku耙中止!無法連接到服務器:連接超時
- 16. H2數據庫(服務器)TCP連接超時和連接池
- 17. 連接超時,但連接到FTP服務器
- 18. Wso2數據服務服務器超時數據庫連接
- 19. SQL連接超時
- 20. SQL連接超時
- 21. 多個同時SQL連接超時在多線程Windows服務
- 22. 連接超時。 ###服務器的響應時間太長
- 23. 服務器連接超時的時間限制?主動JDBC
- 24. C++服務器 - 超過1024個連接
- 25. Android:連接到本地主機上的服務器時連接超時設備
- 26. 連接超時設置爲服務
- 27. 連接超時與REST服務
- 28. 當從tsql/freetds連接sql-azure時,服務器連接失敗
- 29. SQL Server的連接 - 超時
- 30. 當服務器處理請求的時間超過120秒時,節點Express服務器連接超時
不要讀這個像我一樣想的超時將控制查詢執行 - 它沒有,只有超時連接到服務器 - 「連接超時「會是一個更好的名字。請參閱http://stackoverflow.com/a/7976867/409856 – downwitch 2014-05-30 19:07:49