2011-07-02 211 views
0

MySql.Data.MySqlClient.MySqlException: 執行命令 時遇到致命錯誤。 ---> MySql.Data.MySqlClient.MySqlException: 超時過期。在完成 操作或服務器不是 響應之前已經過去了超時期限 。在 MySql.Data.MySqlClient.MySqlDataReader.NextResult() 在 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(的CommandBehavior 行爲)---內部異常結束 堆棧跟蹤導致超時的致命錯誤-mysql

這個錯誤是什麼意思?連接字符串中的最大連接池數= 200?我的應用程序是在.net連接MySQL數據庫的Web應用程序。

+0

也許服務器沒有響應? –

回答

1

連接池並不是解決此問題的答案。連接池允許多個連接到服務器,然後再循環以避免重新建立連接。建立和重建連接在時間和計算資源上可能非常昂貴。

您正在尋找的是增加命令超時。這可以通過兩種方式之一完成。在連接字符串中,通過指定default command timeout或通過將值分配給MySqlCommand上的CommandTimeout屬性。

+0

謝謝,除了1之外,建議的值是多少?什麼可能引發這種情況發生? – Sharpeye500

+0

看起來像我的初始鏈接到連接字符串參數沒有采取。我自從編輯它。我建議你從30秒開始超時並從那裏開始工作。分析您的查詢以獲得最佳時間。 – villecoder