このクエリを実行するには、リソースプールのデフォルトにシステムメモリが不足しています


15

Windows Server 2012でSQL Server 2014-12.0.2269.0(X64)を使用していますが、メモリの問題が発生しています。かなり「重い」計算を行っているストアドプロシージャを実行すると、10分程度でエラーが発生します。

このクエリを実行するには、リソースプール「デフォルト」にシステムメモリが不足しています。

私のSQL Serverには複数のデータベースがあります(15などですが、常に同時に使用されるわけではありません)。(エラーが発生した後)SQL Serverログファイルを調べましたが、次のような行がたくさんありました。

2015-12-17 12:00:37.57 spid19sリソースプール 'default'のメモリが不十分なため、データベース 'Database_Name'のページ割り当てを許可していません。詳細については、「http://go.microsoft.com/fwlink/?LinkId=330673」を参照してください。

レポートは、各コンポーネントが使用するメモリとともにログに生成されます(私は思う)。レポートを正しく解釈すると、によって大量のメモリが消費されていることがわかりMEMORYCLERK_SQLBUFFERPOOLます。ここでレポートを見つけることができます:http : //pastebin.com/kgmk9dPH

また、同じ「結論」を示すグラフを含むレポートを生成しました。

![メモリ使用量

他にも役立つレポートがあります。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

ログにもこのエラーが表示されていることに注意してください。

2015-12-17 12:04:52.37 spid70データベースのメモリ負荷のためにページの割り当てに失敗しました:FAIL_PAGE_ALLOCATION 8

サーバーのメモリに関する情報は次のとおりです。

  • サーバーの合計メモリ:16 Gb

  • SQLサーバーに割り当てられたメモリ:12288 Mb

  • 使用中の物理メモリ(からsys.dm_os_process_memory):9287 Mb

それが役立つ場合、サーバーはSharePointデータベースをホストしません。


サーバーの最大メモリと合計RAMはいくらですか?
キンシャー

回答:


6

これはおそらくあなたの問題に対する正確な答えではありませんが、何らかの形であなたを助けるかもしれないと願っています。

あなたが見ていることはないですMEMORYCLERK_SQLBUFFERPOOLが、MEMORYCLERK_SQLLOGPOOLすべてのメモリを占有します。

SQL 2012には、メモリ不足エラーが発生するという既知の問題があります。2014年を実行している場合でも、同じ問題に直面している可能性があります(2014年の接続アイテムが見つかりませんでしたが)。

また、2014年と2012年の両方で、インデックスの再構築とを含むこの既知の問題がありalways onます。あなたはそれを使用することを指定しませんでしたが、おそらく同じバグに他のトリガーがあります:修正:SQL Serverのテーブルのインデックスを再構築すると、SQLキャッシュメモリが減少し、CPU使用率が増加します

そのため、現時点での最善の提案は、最新のCUに更新して、それがまだ発生するかどうかを確認することMEMORYCLERK_SQLLOGPOOLです。最近いくつかの修正が行われているためです。意味のある2つのセキュリティ修正のみでRTMを実行しているため、SP1 +複数のCUが利用可能です。

この記事でMEMORYCLERK_XTP使用されているメモリ使用量もかなり高いin-memory OLTPため、トラブルシューティングに役立ちます。メモリ使用量の監視とトラブルシューティング

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.