MSSQLSERVER_802 - データベース エンジン エラー

適用対象:SQL Server

詳細

属性
製品名 SQL Server
イベント ID 802
イベント ソース MSSQLSERVER
コンポーネント SQLEngine
シンボル名 NO_BUFS
メッセージ テキスト バッファー プールで使用できるメモリが不足しています。

注意

この記事では、SQL Server について重点的に説明します。 Azure SQL Database のメモリ不足の問題のトラブルシューティングについて詳しくは、「Azure SQL Database によるメモリ不足エラーのトラブルシューティング」をご覧ください。

説明

この問題は、バッファー プールがいっぱいになり、それ以上バッファー プールのサイズを大きくできない場合に発生します。

ユーザー アクション

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

  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. DBCC MEMORYSTATUS 出力を監視し、エラー メッセージが表示された場合にどのように変化するかを調べます。

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

次のアクションを実行すると、SQL Server で使用できるメモリを増やせる可能性があります。

  • SQL Server 以外のアプリケーションがリソースを消費している場合は、そのアプリケーションを停止するか、別のサーバーで実行します。

  • 最大サーバー メモリを構成した場合は、設定値を大きくします。 詳細については、「オプションの手動設定」を参照してください。

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

  • DBCC FREESYSTEMCACHE

  • DBCC FREESESSIONCACHE

  • DBCC FREEPROCCACHE

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