2011-06-13 48 views
-1

これはどのような状態が起こるか考えていますか?タイムアウト期限切れ - 接続

私は適切に&クローズドコネクションを自分のコードで開けました。これはサーバーの問題が原因である可能性がありますか?

これに最適な解決策は何ですか?どのように/最大接続数を確認するのですか?

System.ApplicationException: OpenConnectionメソッドで育っMySqlException、エラー接続: タイムアウトが発生しました。プールから 接続を取得する前に、タイムアウト期間 が経過しました。プールされたすべての 接続が使用され、最大プール サイズに達したため、 が発生している可能性があります。 ---> MySql.Data.MySqlClient.MySqlException: 接続エラー:タイムアウトが切れています。 プールから接続を取得する前に、タイムアウト時間が経過しました。 プールされた接続がすべて であり、プールサイズが最大で に達したために発生している可能性があります。

+1

多くのことがこの原因の可能性があります。知っている接続をどのように管理しているか、さらに詳しい情報が必要です。 –

答えて

2

例外メッセージから、接続を取得しようとしているときにタイムアウトが発生しているようです。メッセージで示唆されているように、最大​​プールサイズを増やすことができます。これを行うには、接続文字列に新しい値を指定します。これのキーワードは - 'max pool size'です。接続文字列に次のキーと値のペアを追加してください。 'max pool size = new value'。

また、 'MySqlConnectionStringBuilder'クラスを使用して 'MaximumPoolSize'プロパティを設定することもできます。

デフォルトの最大プールサイズは100です。実際に接続が不足している場合は、最大プールサイズを増やす代わりに、接続処理を最初に分析することをお勧めします。

関連する問題