Management Studio で実行されているクエリが中断される原因は何ですか?
- テーブル (1,100 万行) から単純な上位 60000 を選択すると、結果が 1 ~ 2 秒以内に返されます。
- クエリを上位 70000 に変更すると、結果に最大 40 分かかります。
別の関連する問題を少し検索したところ、DBCC FREEPROCCACHE を使用して修正する人に出会いました。
- DBCC FREEPROCCACHE を実行してから、70000 のクエリをやり直したところ、うまくいったようです。
ただし、問題は別のクエリでも発生します。
- 90000 まで増やしたり、[Right->Open Table] を使用してテーブルを開こうとすると、約 8000 レコードを取得して停止します。
テーブルを開くときにアクティビティ ログを確認すると、セッションが「Async_Network_IO」の待機タイプで中断されていることが示されます。90000 の選択を実行しているセッションのステータスは「スリープ中」です。これは、45 分で返された上記の選択 70000 クエリと同じステータスです。ステータスが「スリープ中」と表示され、「実行可能」に変化していないように見えるのは奇妙です(アクティビティモニターが30秒ごとに更新されます)。
その他の注意事項:
- Open Table と select 90000 の両方を同時に実行していません。すべてのクエリは一度に 1 つずつ実行されます。
- 32 ビット SQL Server 2005 SP2 CU9 を実行しています。SP3 へのアップグレードを試みましたが、インストールに失敗しました。このアップグレードを試みる前に、問題が発生していました。
- サーバーのセットアップはアクティブ/アクティブ クラスターであり、どちらかのノードで問題が発生し、もう一方のインスタンスにはこの問題はありません。
- この同じサーバー インスタンスに約 20 の他のデータベースがありますが、この 1 つの DB だけで問題が発生しています。
- このデータベースはかなり大きくなります。現在、76756.19MB です。データファイルは11,513MB。
- リモート デスクトップを使用してサーバー ボックスにローカルでログインしています。