現在オフラインです。再接続するためにインターネットの接続を待っています

FIX CPU 使用率が高く、QUERY_EXEC_STATS スピンを介してで競合が発生する場合パフォーマンスが低下 SQL Server 2008 R2 か SQL Server 2012年で発生しました。

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:2662301
マイクロソフト Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) で配布または Microsoft SQL Server 2012年で 1 つのダウンロード可能なファイルが修正されます。修正プログラムは累積的であるため、各新しいリリースすべての修正プログラムが含まれているし、以前 SQL Server 2008 R2 Service Pack 1 (SP1) または Microsoft SQL Server 2012年に含まれていたすべてのセキュリティ更新プログラムのリリースを更新します。
現象
次のシナリオを検討してください:
  • Microsoft SQL Server 2012 Microsoft SQL Server 2008 R2 のインスタンスは、コンピューターにインストールします。
  • 次のようなステートメントを同時にインスタンスが実行されます。
    CREATE PROC p AS RETURN (
    query
    ); EXEC p;
    または、次のコードを含むクエリを実行します。

    IF EXISTS(
    subquery
    );
  • CPU 使用率が常に高いですし、作業スレッドで実行可能な状態であります。
  • 競合の発生を QUERY_EXEC_STATS スピンロックは、高いです。
    スピン カウント、可能性の衝突、および、バックオフ値は、 QUERY_EXEC_STATS スピンロックが増加すばやくします。
    監視する方法の詳細については、 QUERY_EXEC_STATS スピンロックは、「関連情報」セクションを参照してください。

このシナリオでは、パフォーマンスが低下が発生します。

原因
これは、問題は SQL Server 2008年の R2 に発生または SQL Server 2012年を作成し、いくつかのメモリ構造をキャッシュするのではなく、グローバル統計を破棄します。これは、パフォーマンスのボトルネックが発生します。
解決方法

累積的な更新プログラムの情報

SQL Server 2012

この問題に対する修正は、SQL Server 2012 の累積的な更新 1 で初めてリリースされました。この累積的な更新プログラム パッケージの詳細については、「サポート技術情報」資料を参照するには、次の資料番号をクリックしてください。
2679368 累積的な更新プログラム パッケージ 1 の SQL Server 2012
ビルドは累積的であるため、各新しい修正プログラム リリースすべての修正プログラムが含まれているし、以前の SQL Server 2012 に含まれていたすべてのセキュリティ修正プログラム リリースを修正します。マイクロソフトはこの修正プログラムを含む最新の修正プログラム リリースを適用を検討することをお勧めします。詳細については、「サポート技術情報」資料を参照するには、次の資料番号をクリックしてください。
2692828 SQL Server の 2012年 2012 の SQL Server のリリース後にリリースされたビルドします。
SQL Server 2012年のインストールには SQL Server 2012年の修正プログラムを適用する必要があります。

SQL Server 2008年の R2 SP1 用の累積的な更新プログラム パッケージ 5

この問題に対する修正は累積的な更新 5 にまずリリースされました。SQL Server 2008 R2 SP1 用のこの累積的な更新プログラム パッケージの入手方法の詳細については、「サポート技術情報」資料を参照するには、次の資料番号をクリックしてください。
2659694 SQL Server 2008年の R2 SP1 用の累積的な更新プログラム パッケージ 5
ビルドは累積的であるため、各新しい修正プログラム リリースすべての修正プログラムが含まれているし、以前 SQL Server 2008 R2 SP1 に含まれていたすべてのセキュリティ修正プログラム リリースを修正します。この修正プログラムを含む最新の修正プログラム リリースを適用を検討することをお勧めします。詳細については、「サポート技術情報」資料を参照するには、次の資料番号をクリックしてください。
2567616 SQL Server 2008年の R2 SQL Server 2008 R2 SP1 のリリース後にリリースされたビルドします。
詳細
QUERY_EXEC_STATSスピン ロックを監視するには、遅延し、お客様の環境には、次のコードでは、適切なイテレーションの数を調整し、実行します。

SET NOCOUNT ONCREATE TABLE #spins([Spinlock Name] varchar(50),Collisions numeric,Spins numeric,[Spins/Collision] float,[Sleep Time (ms)] numeric,Backoffs numeric, InsertTime datetime DEFAULT GETDATE())DECLARE @counter int = 1WHILE @counter < 10      BEGIN            INSERT INTO #spins ([Spinlock Name], Collisions, Spins, [Spins/Collision], [Sleep Time (ms)], Backoffs) EXECUTE ('DBCC SQLPERF (''SPINLOCKSTATS'') WITH NO_INFOMSGS')            WAITFOR DELAY '00:00:05'            SET @counter +=1      ENDSELECT * FROM #spins WHERE [Spinlock Name] = 'QUERY_EXEC_STATS' ORDER BY InsertTimeDROP TABLE #spins

状況
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

警告: この記事は自動翻訳されています

プロパティ

文書番号:2662301 - 最終更新日: 04/12/2012 09:40:00 - リビジョン: 1.0

  • kbfix kbqfe kbexpertiseadvanced kbmt kbsurveynew KB2662301 KbMtja
フィードバック