MSSQLSERVER_8651

適用対象: SQL サーバー

詳細

属性 Value
製品名 SQL Server
イベント ID 8651
イベント ソース MSSQLSERVER
コンポーネント SQLEngine
シンボル名 MEMGRANT_ERR
メッセージ テキスト 最小クエリ メモリが使用できないので、要求された操作を実行できませんでした。 'min memory per query' サーバー構成オプションの設定値を減らしてください。

説明

他のプロセスによってサーバー メモリが消費されています (サーバーにメモリ負荷がかかっています)。

ユーザーの操作

'min memory per query' サーバー構成オプションの設定値を小さくするか、サーバーに対するクエリ負荷を軽減します。

メモリ エラーのトラブルシューティングに役立つ一般的な手順の概略を次に示します。

  1. このサーバー上で、他のアプリケーションやサービスによってメモリが消費されていないか確認します。 重要度の低いアプリケーションやサービスのメモリ消費量が少なくなるように、構成を変更します。

  2. SQL Server: Buffer Manager および SQL Server: Memory Manager のパフォーマンス モニター カウンターを確認します。

  3. 次に示す SQL Server メモリ構成パラメーターを確認します。

    • max server memory

    • min server memory

    • min memory per query

    通常とは異なる設定がないか確認します。 必要に応じて、これらを修正します。 既定の設定については、SQL Server オンライン ブックの「サーバー構成オプションの設定」を参照してください。

  4. ワークロード (同時セッション数や現在実行中のクエリ数など) をチェックします。

次のアクションにより、SQL Server で使用可能なメモリが増える可能性があります。

  • SQL Server 以外のアプリケーションがリソースを消費している場合は、そのアプリケーションの実行を停止するか、別のサーバーで実行することを検討します。 これにより、外部的なメモリ負荷を軽減できます。

  • 最大サーバー メモリを構成した場合は、設定値を大きくします。

次の DBCC コマンドを実行して、いくつかの SQL Server メモリ キャッシュを解放します。

  • DBCC FREESYSTEMCACHE

  • DBCC FREESESSIONCACHE

  • DBCC FREEPROCCACHE

問題が解決しない場合は、さらに調査します。ワークロードの軽減が必要になる場合もあります。

参照

DBCC FREESYSTEMCACHE (Transact-SQL)
DBCC FREESESSIONCACHE (Transact-SQL)
DBCC FREEPROCCACHE (Transact-SQL)
サーバー構成オプション (SQL Server)
SQL Server の Buffer Manager オブジェクト
SQL Server の Memory Manager オブジェクト