web-dev-qa-db-ja.com

SQLサーバープロセスのスタックダンプとパフォーマンスの低下

今日、My SQL Server 2012データベースで初めてSQL Serverログメッセージを受け取りました。

***Stack Dump being sent to D:\MSSQL11.MSSQLSERVER\MSSQL\LOG\SQLDump0012.txt

* *******************************************************************************

* BEGIN STACK DUMP:

* *******************************************************************************

* -------------------------------------------------------------------------------

* Short Stack Dump

Stack Signature for the dump is 0x000000000000011A

External dump process return code 0x20000001.

External dump process returned no errors.

3つの顕著なエラーがありました

リソースモニター(0xda8)ワーカー0x000000017F050160は、Node 0で解放されないように見えます。解放されたメモリ:3784 KB。最後の待機:MISCELLANEOUS。最後の担当者:タイプCACHESTORE_OBJCP、名前オブジェクトプラン。使用されたおおよそのCPU :カーネル0ミリ秒、ユーザー0ミリ秒、間隔:61143。

SQLサーバープロセスメモリのかなりの部分がページアウトされました。これにより、パフォーマンスが低下する可能性があります。期間:402秒。ワーキングセット(KB):281064、コミット済み(KB):1658940、メモリ使用率:16%。

リソースモニター(0xda8)ワーカー0x000000017F050160は、Node 0で解放されないように見えます。解放されたメモリ:3784 KB。最後の待機:MISCELLANEOUS。最後の担当者:タイプCACHESTORE_OBJCP、名前オブジェクトプラン。使用されたおおよそのCPU :カーネル0ミリ秒、ユーザー0ミリ秒、間隔:61143。

そしてD:\ MSSQL11.MSSQLSERVER\MSSQL\LOG\SQLDump0012.txtメッセージはそのようなものです

Current time is 02:56:35 12/22/15.                                                                               
=====================================================================                                            
       BugCheck Dump                                                                                             
=====================================================================                                            

This file is generated by Microsoft SQL Server                                                                   
version 11.0.3128.0                                                                                              
upon detection of fatal unexpected error. Please return this file,                                               
the query or program that produced the bugcheck, the database and                                                
the error log, and any other pertinent information with a Service Request.                                       


Computer type is Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz.                                                       
Bios Version is INTEL  - 6040000                                                                                 
PhoenixBIOS 4.0 Release 6.0                                                                                      
1 X64 level 8664, 14 Mhz processor (s).                                                                          
Windows NT 6.2 Build 9200 CSD .                                                                                  

Memory                               
MemoryLoad = 87%                     
Total Physical = 4095 MB             
Available Physical = 526 MB          
Total Page File = 7144 MB            
Available Page File = 1254 MB        
Total Virtual = 134217727 MB         
Available Virtual = 134210033 MB     
**Dump thread - spid = 0, EC = 0x0000000000000000                                                                
***Stack Dump being sent to D:\MSSQL11.MSSQLSERVER\MSSQL\LOG\SQLDump0012.txt                                     
* *******************************************************************************                                
*                                                                                                                
* BEGIN STACK DUMP:                                                                                              
*   12/22/15 02:56:36 spid 1472                                                                                  
*                                                                                                                
* Non-yielding Resource Monitor                                                                                  
*                                                                                                                
* *******************************************************************************                                
* -------------------------------------------------------------------------------                                
* Short Stack Dump 

任意の提案や助けをいただければ幸いです。

2

これは完全な答えではありません回避策他の人がコメントで示唆しているのは、正確に何が原因かについての情報を取得するためにMicrosoftにケースを提起する必要があるためですこの問題。

注:すべてのスタックダンプがSQL Serverのバグが原因であるわけではありません。ただし、SQL Server 2012 SP3を適用することを強くお勧めします。 AFAIKには、ページング情報を取得してSQL Server 2012でスタックダンプを生成するようなバグはありません。

SQLサーバープロセスメモリのかなりの部分がページアウトされました。これにより、パフォーマンスが低下する可能性があります。時間:402秒。ワーキングセット(KB):281064、コミット済み(KB):1658940、メモリ使用率:16%。

これは、この問題の原因である可能性があるため、この点について心配する必要があります。 SQL Serverからメモリを奪い取ってプログラムまたはプロセスが実行されているため、SQL Serverがプロセスをディスクにページングし、このメッセージをログに記録しています。それが何かを知る必要があります。このようなメッセージが表示された場合の移動方法については、 この記事 をお読みください。

回避策:SQL Serverサービスアカウントに メモリ内のロックされたページの特権LPIM があることを確認してください。これにより、他のプロセスがSQL Serverのメモリをトリムして、プロセスを強制的にページングすることはできません。これが回避策だと言ったので、SQL Serverが消費しているメモリを何が奪っているかを調べる必要があります。 LPIMを指定する前に、 適切な値または最大サーバーメモリを設定する であることを確認し、OSが正しく機能するように十分に残します。

Perfmonカウンター(Process: Private bytes and Working set)メモリを要求し、OSにSQL Serverを含むプロセスのワーキングセットのトリミングを開始させるアプリケーション/ウィンドウコンポーネントを決定します。

HyperVを使用しているため、OS側から、過剰なメモリを必要とするプロセスが実行されているかどうかを確認する必要もあります。

2
Shanky