web-dev-qa-db-ja.com

1つのテーブルを除いて、DBでインデックスを再構築できますか?

データベースにテーブルがあり、アプリケーションサーバーによって変更が常に監視されています。残念ながら、このテーブルに接続されているインデックスを再構築すると、アプリサーバーの接続が切断されます。これにより、アプリケーションサーバーで印刷ジョブやその他のさまざまなプロセスが警告なしに失敗します。

これがいつ発生するかを通知する小さな監視SQLジョブを作成しましたが、そもそもそれが発生しないようにしたいと思います。

パフォーマンス上の理由から、毎週インデックスを再構築する必要がありますが、そのテーブルに関連付けられているインデックスをスキップしても問題ありません。

そのテーブルに触れずに、残りのデータベースのインデックスを再構築するにはどうすればよいですか?

編集:私は現在、SSISジョブ(缶詰のメンテナンスプラン)を使用して、DB内のすべてのテーブルのすべてのインデックスを再構築しています。その後、統計を更新して整合性をチェックします。

3
bluehiro

Michelle Uffordのようなより優れたソリューションを実装する必要があります。デフラグ、再構築、またはそのままにするインデックスについて、よりインテリジェントな決定が実行され、除外するのは非常に簡単です。

http://sqlfool.com/2011/06/index-defrag-script-v4-1/

5
Aaron Bertrand