MSSQLSERVER_701

適用対象:yesSQL Server (サポートされているすべてのバージョン)

詳細

属性
製品名 SQL Server
イベント ID 701
イベント ソース MSSQLSERVER
コンポーネント SQLEngine
シンボル名 NOSYSMEM
メッセージ テキスト システム メモリが不足しているため、このクエリを実行できません。

Note

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

説明

このエラーは、クエリをSQL Server十分なメモリを割り当てなかった場合に発生します。 この原因としては、オペレーティング システムの設定、物理メモリの可用性、現在のワークロードのメモリ制限など、さまざまなことが考えられます。 ほとんどの場合、トランザクションが失敗しても、このエラーは発生しません。

サーバーに十分なメモリがないので、DBCC ステートメントなどの診断クエリは失敗する可能性があります。

リソース プール 'default' でクエリ実行のためのメモリ リソースを待機中にタイムアウトが発生しました。

ユーザー アクション

リソース ガバナーを使用していない場合は、サーバーの全体的な状態と読み込みを検証するか、リソース プールまたはワークロード グループの設定を確認することをお勧めします。

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

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

  2. パフォーマンス モニター カウンターの収集を開始SQL Server:Buffer Manager、SQL Server: Memory Manager

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

    • max server memory

    • min server memory

    • min memory per query

    通常とは異なる設定がないか確認します。 必要に応じて、これらを修正します。 高くなったメモリ要件を把握しておきます。 既定の設定については、「サーバー メモリの構成オプション」に記載されています。

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

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

次のアクションを実行すると、使用できるメモリが多SQL Server。

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

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

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

  • DBCC FREESYSTEMCACHE

  • DBCC FREESESSIONCACHE

  • DBCC FREEPROCCACHE

問題が解決しない場合は、さらに調査します。サーバーリソースを増やすか、ワークロードを減らす必要がある場合もあります。