データベース スコープの構成オプションの概要
SQL Server では、常にデータベース レベルで構成オプションが提供されています。 たとえば、復旧モデルは従来、データベース設定でした。 より複雑な機能が導入されたので、追加のオプションが追加されました。 これらのオプションの多くは、データベースレベルの構成設定でもあるデータベースの互換性レベルにリンクされています。 これらの構成オプションは、2 つのグループに分類できます。小さな違いがあります。
T-SQL の
ALTER DATABASE SCOPED CONFIGURATION構文によって構成されるオプションT-SQL の
ALTER DATABASE構文によって構成されるオプション
これらのオプションを設定する方法の違いには、それほど大きな意味はありません。
ALTER DATABASE を使用して設定されるオプションには、次のものがあります。
データベースの復旧モデル – そのデータベースが完全復旧モデルと単純復旧モデルのいずれであるか
自動チューニング オプション – 最後の良好なプランの強制を有効にするかどうか
統計の自動作成と更新 – データベースが統計を作成および更新できるようにし、統計の非同期更新オプションを使用できるようにします
クエリ ストア オプション – クエリ ストアのオプションはこちらで構成します
スナップショット分離 – スナップショット分離と Read Committed スナップショット分離を構成できます
上記の設定は、構成可能なオプションのサブセットです。
以前はサーバー上で構成されていた多くのオプションが、データベース レベルで構成できるようになりました。 オプションの一部を次に示します。
並列処理の最大限度 – データベースが独自の MaxDOP 設定を構成して、サーバーの設定をオーバーライドするようにできます。
レガシ カーディナリティ推定 – データベースが以前のカーディナリティ推定機能を使用するようにできます。 一部のクエリでは、新しいカーディナリティ推定機能によってパフォーマンスが低下しているおそれがあるため、この設定を使用すると効果がある場合があります。 このオプションを新しい互換性レベルで使用する場合でも、互換性レベル 140 または 150 なら、依然としてインテリジェント クエリ処理のメリットを得ることができます。
最後のクエリ プランの統計 – クエリに対する最後の実際の実行プランの値をキャプチャできます。 この機能は、互換性レベル 150 でのみアクティブです。
アドホック ワークロードの最適化 – オプティマイザーを使用して、スタブ クエリ プランをプラン キャッシュに格納します。 これは、1 回のみ使用するクエリが多数含まれているワークロードのプラン キャッシュのサイズを小さくするのに役立つ場合があります。
データベース互換性レベル
各データベースには独自の互換性レベルがあり、これによってそのデータベースのクエリ オプティマイザーの動作が制御されます。
SQL Server をアップグレードするときにこの設定を管理することで、クエリの実行プランが元のバージョンと同様になるようにすることができます。
Microsoft では、以前の互換性レベルでの実行を長期間サポートしています。 インテリジェント クエリ処理の新しい機能の多くは互換性レベル 140 または 150 でのみ利用可能であるため、可能であれば、新しい互換性レベルにアップグレードすることをお勧めします。