インデックスを再構築してクエリのパフォーマンスを改善する
2016/7/2
文書番号:20531
これまで普通に使えていた SQL Server が急に遅くなった、夜間の更新処理に異常に時間がかかるようになった。といったとき、統計情報が古くなっていて実行プランが正しく選択されていないことががあります。
「統計情報を更新してクエリのパフォーマンスを改善する」
「実行プランを作成しなおしてクエリのパフォーマンスを改善する」
では統計情報を更新したり、実行プランをクリアしたりしてクエリのパフォーマンス改善を試みましたがこれで改善しなかった場合、次はインデックスを再構築してみます。
「統計情報を更新してクエリのパフォーマンスを改善する」
「実行プランを作成しなおしてクエリのパフォーマンスを改善する」
では統計情報を更新したり、実行プランをクリアしたりしてクエリのパフォーマンス改善を試みましたがこれで改善しなかった場合、次はインデックスを再構築してみます。
【実行方法】
- テーブル単位でインデックスを再構築します。
指定したテーブルに関連づいているインデックスをすべて再構築します。
USE [データベース名]; GO --テーブルを指定してインデックスを再構築する ALTER INDEX ALL ON テーブル名;
- 特定のインデックスを再構築します。
USE [データベース名]; GO --テーブルを指定して統計情報を更新する ALTER INDEX インデックス名 ON テーブル名 REBUILD;