質問
SQLサーバーに問題があります。 SQLがWebアプリケーションに応答しなくなるため、1日に約2回サーバーを再起動する必要があります。 一度にアクティブになるのは20を超えることはないため、多くの接続に問題があるようには見えません。 奇妙なことは、MS SQL Enterprise Manager 8.0からのみsqlにアクセスできることです。他のアプリケーション(asp.netまたはSQL Server Management Studio 05)タイムアウトからの接続。 クエリはエンタープライズマネージャーで正常に機能するため、ロックの問題とも考えられません。 どんな助けも大歓迎です。ありがとう
解決
SQL Serverのログには何と書かれていますか?クリーンで、かつ(ローカルまたはリモートでDBに接続できる)AND再起動によりアプリが既知の状態に復元される場合 それから プーリングの問題やネットワークの問題を示唆しています
同様の問題がありましたが、最新のサービスパックにアップグレードすることにより、明確な理由もなく修正されました。私たちの問題は、Webアプリが閉じていると考えている間、基礎となるネットワーク接続を開いたままにするボックスに現れたため、プールを復元し、最大接続を実行しようとしました。質問では、最大接続数に達していないが、症状は似ています。 OSレベルからのネットワーク接続を見てください。考慮すべきその他の事項...
Webアプリをホストしているのと同じボックスから接続できますが、クエリアナライザーやコマンドラインからbcpやisqlなどの別のクライアントアプリを使用しますか?
もう1つ、Webアプリボックスから接続できる場合、アプリが使用するdbを使用できますか?もしそうなら、あなたはそこにいれば物事をすることができますか?
Webアプリの接続プールのパラメーター設定は何ですか?これらを調整してみましたか?
幸運。
他のヒント
- 環境の変更、ハードウェアまたはソフトウェアはありますか?
- 最後の変更は何ですか?
ネットワークの問題に関する経験からのメモです。ネットワークに障害が発生した場合、ネットワーク接続の構築が発生する可能性があります。これは、パフォーマンスモニター(perfmon)のパフォーマンスカウンターからのみ確認できます。見たい場所。
環境の変更がない場合、データベースには、テーブルとインデックスの統合、バックアップへのログのプッシュまたはパージ、およびDBAによるクリーンアップなど、古いメンテナンスが必要な場合があります。
以前にMySQLで同様の問題が発生し、アイドル接続が失効としてマークされてタイムアウトになり、最終的にアプリケーションを再起動する必要がありました。 接続プールに使用可能な構成があるのでしょうか?
誰かがあなたを助けるのを助けるかもしれないいくつかの質問:
- 実行しているSQL Serverのバージョンは何ですか?
- サーバーボックスで他に何か実行していますか?
- 特定のクライアントからアクセスできないと言います-タイムアウトします。接続するだけでタイムアウトするのですか、それともクエリを実行するときにタイムアウトするのですか?
- 各クライアントマシンのこれらのアプリで同じように動作しますか?
SQLサーバー自体がアイドル状態であり、ブロッキングが認識されない場合、ネットワークまたはファイアウォールまたはウイルス対策の問題が考えられますか?または、サーバーRAIDアレイが死にかけています。
そのときのRAMメモリの状況。 たぶんあなたはRAMで台無しにしています
SQLログを見て、拡張など、通常とは異なる動作が発生しているかどうかを確認していますか?
動きが取れなくなったときに何が実行されているかを確認するためにプロファイリングしていますか?
異常なアクティビティについて、ボックスのイベントログを確認していますか
SQL Serverのみを再起動するのですか、それともボックス全体を再起動するのですか?