1

Microsoft SQL Server 2005 に対して単純なselect * from tableクエリを実行しています。テーブルには、PK クラスター化インデックスを持つ約 41000 のレコードがあり、Windows 統合認証を使用しています。

  • Microsoft SQL Server Management Studio を使用して自分のマシンでこれを実行すると、クエリは約 1 時間 45 分で完了します。グリッドからテキスト出力への切り替えを試み、コマンドラインから実行して、クエリの前にSQLCMDececuting も試しました...クエリの速度は何も変わりませんでした。DBCC USEROPTIONSDBCC DROPCLEANBUFFERSDBCC FREEPROCCACHE

  • 資格情報を使用して同僚のワークステーションから実行すると、クエリはすぐに正常に完了します。同僚が資格情報を使用して私のワークステーションでクエリを実行すると、上記のようにクエリが非常に遅くなります。

この問題のトラブルシューティング方法のアイデアが不足しています。どういうわけか、問題は私のマシンに関連しているように見えますが、それを理解することはできません. 次のことも考慮してください。

  • 自分のマシン (Win7-64bit) で ODBC トレースが有効になっていないことを確認しました。Microsoft Management Studio 2008 R2 を使用して SQL Server クライアント ツールをインストールしました。これは、データベースのクエリに使用しているものです。
  • また、VS2010 を使用して同じ SQL クエリを実行しましたが、結果は同じです。
  • 同じテーブル/データベースのコピーに対してクエリを実行しますが、別のサーバーで問題が解決しません。
  • 実行するとselect count(*) from table、クエリは遅延なく正常に完了します。
  • SQL Server プロファイラーでトレースを実行すると、クエリは実行時間の長いクエリに過ぎません。異常は何も表示されません。
  • テキスト出力を使用して MS SQL Server Management Studio でクエリを実行すると、約 85 レコードの初期バッファの後に、後続のレコードが一度に約 400 レコードの一括で到着することがわかります。例えば ​​85 -> 407 -> 804 -> 1210 -> 1605 -> 1897 -> 2161 -> 2753 -> 3051 -> 3342 -> 3676 -> 4002 など。データが到着すると、連続ストリームとして描画されます!?
  • また、自分のマシンとクエリが正常に実行されている他のマシンの実際のクエリ実行プランを比較しましたが、それらは同じように見えます。

ここで何がうまくいかないのか、誰かが理解できますか?私のマシンからこれを実行すると非常に遅いのに、別のワークステーションからは正常に実行されるのはなぜですか?... この問題をトラブルシューティングするための推奨されるアクション手順はありますか?

事前にみんなに感謝します!

4

2 に答える 2

1

問題が見つかりました - ネットワーク アダプタ ドライバの更新でした。ドライバーをロールバックすると、クエリは期待どおりに実行され、遅延はありません!ここに画像の説明を入力

これを突き止めるのにかなりの時間がかかりました。記録のために、私のネットワーク カードは「Intel(R) 82579LM ギガビット ネットワーク コネクション」です。悪質なネットワーク ドライバーは、Windows の更新によってもたらされました。私のワークステーションは HP 8200 Elite です。ドライバーのロールバック後、HP サポート サイトから最新のネットワーク ドライバーをダウンロードしてインストールしました。

于 2012-10-29T11:06:06.243 に答える
0

LANに有線接続されていますか?Wi-Fi?ネットワーク遅延を確認してください。提供されたものはすべて正常に見えます。これを確認するには、データベース サーバーに ping を実行します。

次に確認することは、その時点でサーバーまたはデータベースで他に何も実行されていないことを確認することです。ウイルス対策ソフトウェア、テスト、DB の速度を低下させる可能性のあるあらゆるもの。また、仮想ボックス経由でこのクエリを実行していますか? ローカル サーバーとリモート ボックスの両方から実行計画を取得し、それらを並べて比較します。それらは同じでなければなりません。そうでない場合は、問題があることがわかります。

また、各接続でクエリが実行されたユーザー SET オプションも確認してください。それは効果があるかもしれません。これらのいずれも問題にならない場合、次の推測はハードウェアまたは構成の障害です

于 2012-10-25T15:32:37.913 に答える