MySQLDBを使用して新しいバージョンのASP.NETC#アプリを展開した後、接続に問題が発生しています。
昨日、「接続が多すぎます」というエラーが発生しました。接続が開いているのを監視していますが
SHOW FULL PROCESSLIST
、日中は接続が増え続けています。
私たちのバグがどこにあるのかを理解する良い方法はありますか?スリープ状態の接続が行った最後のクエリをチェックするのが好きですか?
MySQLDBを使用して新しいバージョンのASP.NETC#アプリを展開した後、接続に問題が発生しています。
昨日、「接続が多すぎます」というエラーが発生しました。接続が開いているのを監視していますが
SHOW FULL PROCESSLIST
、日中は接続が増え続けています。
私たちのバグがどこにあるのかを理解する良い方法はありますか?スリープ状態の接続が行った最後のクエリをチェックするのが好きですか?
アプリがデータベースへの接続を適切に閉じていることを確認してください....アプリが接続を閉じていない場合、上記のエラーが発生します
通常、接続プールはこの問題を解決しました。あなたの場合、接続が長すぎるように見えます。つまり、ソフトウェアの一部のブランチでは、使用後に接続を閉じる最終的なものがありません。いつでも開いている接続の数を監視し、後で分析するためにダンプを作成するように誰かに警告できるため、問題のある接続の使用状況を中央ポイントで診断することは特に役立ちます。
MySQLインスタンスに許可される接続の数を増やすこともできます。my.cnfの設定は「max_connections」です。
最後に、必要に応じて、インスタンスの「wait_timeout」または「interactive_timeout」プロパティを減らしてみてください。これらの設定は、一定時間後の接続のアトミッククローズを調整します。