次の方法で共有


[インデックスの再構築タスク] (メンテナンス プラン)

適用対象: SQL Server

[インデックスの再構築タスク] ダイアログ ボックスを使用すると、データベースのテーブルに新しい FILL FACTOR でインデックスを再作成できます。 FILL FACTOR は、後で拡張できるように、インデックスの各ページの空き領域の量を決定します。 FILL FACTOR が適用されるのはインデックスの作成時だけであるため、テーブルにデータが追加されるにつれて、各ページの空き容量は徐々に減少します。 データ ページおよびインデックス ページを再編成すると、再び空き領域を確保できます。

[インデックスの再構築タスク] では、ALTER INDEX ステートメントが使用されます。 このページで説明するオプションの詳細については、「 ALTER INDEX (Transact-SQL)」を参照してください。

[オプション]

  • 接続

    このタスクを実行するときに使用するサーバー接続を選択します。

  • New

    このタスクを実行するときに使用する新しいサーバー接続を作成します。 [新しい接続] ダイアログ ボックスについては、後で説明します。

  • データベース

    このタスクで操作するデータベースを指定します。

    • [すべてのデータベース]

      tempdb を除くすべての SQL Server データベースに対してメンテナンス タスクを実行するメンテナンス プランを生成します。

    • [すべてのシステム データベース]

      tempdb を除く各 SQL Server システム データベースに対してメンテナンス タスクを実行するメンテナンス プランを生成します。 ユーザーが作成したデータベースではメンテナンス タスクは実行されません。

    • [すべてのユーザー データベース]

      ユーザーが作成したすべてのデータベースを対象として、メンテナンス タスクを実行するメンテナンス プランを生成します。 SQL Server のシステム データベースではメンテナンス タスクは実行されません。

    • [これらのデータベース]

      選択されたデータベースだけを対象として、メンテナンス タスクを実行するメンテナンス プランを生成します。 このオプションをオンにする場合は、少なくとも 1 つのデータベースが一覧内で選択されている必要があります。

      Note

      メンテナンス プランは、互換性レベルが 80 以上に設定されているデータベースに対してのみ実行されます。 互換性レベルが 70 以下に設定されているデータベースは表示されません。

  • Object

    [選択] グリッドでテーブル、ビュー、または両方を表示するように制限します。

  • 選択内容

    このタスクの対象とするテーブルまたはインデックスを指定します。 [オブジェクト] ボックスで [テーブルとビュー] が選択されている場合は、このオプションは利用できません。

  • [ページごとの既定の空き領域]

    データベース内のテーブルに定義されているインデックスを削除し、インデックスの作成時に指定された FILL FACTOR を使用して、新しいインデックスを再作成します。

  • [ページごとの空き領域を変更する]

    データベース内のテーブルに定義されているインデックスを削除し、指定した割合の空き領域が各インデックス ページに確保されるように自動的に計算される FILL FACTOR の値を使用してインデックスを再作成します。 指定するパーセント値を大きくすると、インデックス ページに確保される空き領域が増えて、より多くのデータをインデックスに追加できるようになります。 有効な値は 0 から 100 です。

  • [tempdb の結果を並べ替える]

    SORT_IN_TEMPDB オプションを使用して、インデックス作成中に生成された中間の並べ替え結果を一時的に格納する場所を決定します。 並べ替え操作が必要ない場合、または並べ替えをメモリ内で実行できる場合、SORT_IN_TEMPDB オプションは無視されます。

  • インデックスを埋め込む (Pad index)

    インデックスの埋め込みを指定します。

  • [Keep index online] (オンラインのインデックスを保持する)

    ONLINE オプションを使用すると、インデックス操作の実行中に、ユーザーは基になるテーブルまたはクラスター化インデックス データ、および任意の関連付けられた非クラスター化インデックスにアクセスできます。

    Note

    オンラインでのインデックス操作は、Microsoft SQL Server のすべてのエディションで使用できるわけではありません。 SQL Server の各エディションでサポートされる機能の一覧については、「SQL Server 2022 の各エディションとサポートされている機能」を参照してください。

  • [インデックスを再構築しない] | [オフラインでインデックスを再構築する]

    インデックスの種類がオンラインでは再構築できない場合の処理を指定します。

  • MAXDOP

    並列プランの実行で使用されるプロセッサ数を制限する値を指定します。

  • [Low Priority Used] (低優先度の使用)

    優先度の低いロックを待機するには、このオプションを選択します。

  • [Abort after Wait] (待機後に中止)

    [最長期間] で指定した時間が経過した後に行う処理を指定します。

  • [最長期間]

    優先度の低いロックを待機する時間を指定します。

  • [T-SQL の表示]

    選択したオプションに基づき、このタスクでサーバーに対して実行される Transact-SQL ステートメントを表示します。

    Note

    影響を受けるオブジェクトが大量にある場合は、表示にかなりの時間を要する場合があります。

インデックス統計オプション

以前のバージョンの Microsoft SQL Server では、システムの処理速度が低下して、大規模なインデックスを再構成または再構築することがありました。 SQL Server 2016 (13.x) では、これらのインデックス操作のパフォーマンスが大幅に向上しました。

また、以前のバージョンでは、コントロールの粒度はそれほど細分化されていませんでした。 このため、インデックスがそれほど断片化されていない場合でも、システムがインデックスを再構成または再構築することがあり、無駄が生じていました。 メンテナンス プランのユーザー インターフェイス (UI) で新しいコントロールを使用すると、インデックス統計情報の条件を基にして、更新する必要がないインデックスを除外できます。 この場合、次の Transact-SQL の動的管理ビュー (DMV) が内部的に使用されます。

[スキャンの種類]

システムは、インデックス統計情報を収集するために、リソースを使用する必要があります。 必要とするインデックス統計情報の精度に応じて、比較的少ないリソースを消費するか、多くのリソースを消費するかを選択できます。 UI には次の精度レベルの一覧があり、ユーザーはそのうち 1 つを選択する必要があります。

  • 高速
  • サンプリング
  • 詳細

次の場合に限りインデックスを最適化する

UI には、まだ更新の必要性がそれほど高くないインデックスが更新されないようにするために使用できる、次の調節可能なフィルターが提供されています。

  • 断片化>(%)
  • ページ数>
  • 最終使用 (日)

[新しい接続] ダイアログ ボックス

  • 接続名

    新しい接続の名前を入力します。

  • [サーバー名の選択または入力]

    このタスクを実行するときに接続するサーバーを選択します。

  • [更新]

    使用できるサーバーの一覧を表示します。

  • [サーバーにログオンするための情報の入力]

    サーバーの認証情報を指定します。

  • [Windows NT の統合セキュリティを使用する]

    Microsoft Windows 認証を使用して、SQL Server データベース エンジンのインスタンスに接続します。

  • [特定のユーザー名とパスワードを使用する]

    SQL Server 認証を使用して SQL Server データベース エンジンのインスタンスに接続します。 このオプションは使用できません。

  • ユーザー名

    認証に使用する SQL Server ログインを指定します。 このオプションは使用できません。

  • パスワード

    認証に使用するパスワードを指定します。 このオプションは使用できません。

関連項目