以下の構成のサーバーでホストされている、サイズ300 GBのデータベースの1つからデータをヒット/フェッチする、実行速度の遅いSQLサーバークエリの根本原因を突き止めようとしています。
Windows Server 2003 R2、SP2、Enterprise Edition、16 GB RAM、12 CPU's 32ビット
SQL Server 2005、SP4、Enterprise Edition、32ビット。
64ビットへのアップグレードについては既に1か月以上かかるとの情報を提供しています。
しかし、現在の問題では、メモリのプレッシャーを解決できるか、最終的にRAMを増やすという結論に達することができる場合、データを収集しようとしています。
完了したアクション:このデータベースでは、インデックスの再作成と統計の更新が適切です。
以下に示すように、過去5日間、ロード時間中に実行されたセマフォのwaittypeに気付きました。
以下のクエリの後のいくつかの情報:バッファのサイズ= 137272
SELECT SUM(virtual_memory_committed_kb)
FROM sys.dm_os_memory_clerks
WHERE type='MEMORYCLERK_SQLBUFFERPOOL'
セマフォメモリ=以下のクエリごとに644024
SELECT SUM(total_memory_kb)
FROM sys.dm_exec_query_resource_semaphores
以下はdm_exec_query_resource_semaphores
、sys.dm_exec_query_memory_grants
DMV から収集された詳細情報です。
したがって、上記の情報が収集され、SP_Blitzデータごとにリソースセマフォが問題のようです。
リソースセマフォIDに割り当てられたメモリ 'target_memory_kb'は、使用可能な16 GB RAMと比較して低すぎますか。
注* 8時間の分析ごとに 'target_memory_kb'を実行すると、使用可能な16 GBと比較して常に1 GB未満になりますか?
ここで問題になる可能性のあるものと解決方法は、提案してください
ありがとう