最小および最大サーバー メモリの効果
min server memory および max server memory 構成オプションは、Microsoft SQL Server データベース エンジン のバッファ プールが使用するメモリ容量の上限と下限を設定します。バッファ プールは、min server memory に指定されたメモリ容量をすぐには獲得しません。バッファ プールは、初期化に必要なメモリのみで起動します。データベース エンジン のワークロードが増えるにしたがって、そのワークロードに対応するために必要なメモリを獲得し続けます。バッファ プールは、min server memory で指定しされたメモリ容量に達するまでは獲得したメモリを解放しません。メモリ容量が min server memory に達すると、バッファ プールは標準アルゴリズムを使用して、必要に応じてメモリ容量を獲得または解放します。唯一の違いは、バッファ プールはそのメモリ割り当てを min server memory の値より少ないメモリ容量にはせず、max server memory の値より多いメモリ容量は獲得しないということです。
メモ : |
---|
プロセスとしての SQL Server は、max server memory オプションで指定された容量を超えるメモリを獲得します。内部コンポーネントも外部コンポーネントも、バッファ プール外にメモリ容量を割り当てることができます。この場合は、メモリ容量が余分に消費されますが、通常、SQL Server によって消費されるメモリ容量の最大部分は、バッファ プールに割り当てられたメモリ容量が占めます。 |
データベース エンジン が獲得するメモリ容量は、そのインスタンスのワークロードに完全に依存します。あまり多くの要求を処理しない SQL Server のインスタンスでは、まったく min server memory に達しないこともあります。
min server memory と max server memory の両方に同じ値を指定した場合、データベース エンジンに割り当てられたメモリがその値に達すると、データベース エンジン は動的なメモリの解放および獲得を停止します。
他のアプリケーションが頻繁に停止または起動されるコンピュータ上で SQL Server のインスタンスが動作している場合、SQL Server のインスタンスによるメモリの割り当てと解放により、他のアプリケーションの起動時間が遅くなることがあります。SQL Server が、1 つのコンピュータ上で動作している複数のサーバー アプリケーションのうちの 1 つであるときも、SQL Server に割り当てるメモリ量をシステム管理者が制御しなければならない場合があります。このような場合には、min server memory オプションと max server memory オプションを使用して、SQL Server が使用するメモリ量を制御できます。詳細については、「サーバー メモリ オプション」を参照してください。
参照
処理手順
最小クエリ メモリを設定する方法 (SQL Server Management Studio)
概念
メモリ アーキテクチャ
メモリ使用率の監視
メモリ構成オプションを使用したサーバー パフォーマンスの最適化
大規模データベースのメモリ管理