FIX: Lent performance apare în SQL Server 2008 R2 sau în SQL Server 2012 dacă înalt de utilizare CPU este observat cu dispută peste QUERY_EXEC_STATS spinlock

Traduceri articole Traduceri articole
ID articol: 2662301 - View products that this article applies to.
Măriți totul | Reduceți totul

În această pagină

Microsoft distribuie Microsoft SQL Server 2008 R2 pachet Service Pack 1 (SP1) sau Microsoft SQL Server 2012 fixat într-un fișier descărcabil. Deoarece remedierile sunt cumulative, fiecare nouă versiune conține toate remedierile rapide și toate actualizările de securitate care au fost incluse cu anterioare SQL Server 2008 R2 pachet Service Pack 1 (SP1) sau Microsoft SQL Server 2012 update release.

SIMPTOME

Luați în considerare următorul scenariu:
  • Instalați o instanță a Microsoft SQL Server 2008 R2 sau Microsoft SQL Server 2012 pe un computer.
  • Declarații concurente care seamănă cu următorul sunt executate în rând:
    CREATE PROC p AS RETURN (
    query
    ); EXEC p;
    Sau executați o interogare care conține următorul cod:

    IF EXISTS(
    subquery
    );
  • CPU usage este ridicat în mod constant, și fire locul de muncă sunt în stat runnable.
  • Afirmație pentru QUERY_EXEC_STATS spinlock este mare.
    De exemplu, numărul de spin, coliziuni posibil și valorile spate-off pentru QUERY_EXEC_STATS spinlock cre?te rapid.
    Notă Pentru mai multe informații despre cum să monitorizeze QUERY_EXEC_STATS spinlock, consultați secțiunea „mai multe informații".

În acest scenariu, lent performance ar putea apărea.

CAUZĂ

Aceasta eliberează deoarece are loc SQL Server 2008 R2 sau SQL Server 2012 creează ?i distruge unele structuri de memorie despre statisticile globale în loc de cache-ul ei. Acest lucru provoacă o strangulare de performanță.

REZOLUȚIE

Actualizarea cumulativă informații

SQL Server 2012

Fix pentru această problemă a fost lansat în 1 actualizare cumulativă pentru SQL Server 2012. Pentru mai multe informații despre acest pachet de actualizare cumulativ, faceți clic pe următorul număr de articol pentru a vedea articolul în bază de cunoștințe Microsoft:
2679368 Pachet de actualizare cumulativ 1 pentru SQL Server 2012
Notă Pentru că construiește sunt cumulative, fiecare nouă versiune fix conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în anterioare SQL Server 2012 fix de presă. Microsoft recomandă că vă ia în considerare aplicarea cele mai recente fix de lansare care conține această remediere rapidă. Pentru mai multe informații, faceți clic pe următorul număr de articol pentru a vedea articolul în bază de cunoștințe Microsoft:
2692828 2012 De Server SQL construiește care au fost lansate după ce a fost lansat SQL Server 2012
Trebuie să aplicați o remediere rapidă de SQL Server 2012 pentru o instalare de SQL Server 2012.

set de actualizări cumulativă 5 pentru SQL Server 2008 R2 SP1

Fix pentru această problemă a fost lansat în 5 actualizare cumulativă. Pentru mai multe informații despre cum se obține acest pachet de actualizare cumulativ pentru SQL Server 2008 R2 SP1, faceți clic pe următorul număr de articol pentru a vedea articolul în bază de cunoștințe Microsoft:
2659694 set de actualizări cumulativă 5 pentru SQL Server 2008 R2 SP1
Notă Pentru că construiește sunt cumulative, fiecare nouă versiune fix conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în anterioare SQL Server 2008 R2 SP1 fix de presă. Vă recomandăm să considerați că aplicarea cele mai recente fix de lansare care conține această remediere rapidă. Pentru mai multe informații, faceți clic pe următorul număr de articol pentru a vedea articolul în bază de cunoștințe Microsoft:
2567616 SQL Server 2008 R2 construiește care au fost lansate după ce a fost lansat SQL Server 2008 R2 SP1

INFORMAȚII SUPLIMENTARE

Pentru a monitoriza QUERY_EXEC_STATS spinlock, ajusta întârziere și numărul de iterații în funcție de mediul în următorul cod, și apoi atunci a alerga it:

SET NOCOUNT ON
CREATE 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 = 1
WHILE @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
      END
SELECT * FROM #spins WHERE [Spinlock Name] = 'QUERY_EXEC_STATS' ORDER BY InsertTime
DROP TABLE #spins

STARE

Microsoft a confirmat că aceasta este o problemă asociată cu produsele Microsoft enumerate în secțiunea „se aplică la".

Proprietă?i

ID articol: 2662301 - Ultima examinare: 12 aprilie 2012 - Revizie: 1.0
SE APLICĂ LA:
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
Cuvinte cheie: 
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2662301 KbMtro
Traducere automată
IMPORTANT: Acest articol a fost tradus de software-ul de traducere automată Microsoft, si nu de un traducător. Microsoft vă oferă atât articole traduse de persoane, cât și articole traduse automat, astfel incat aveti access la toate articolele din Baza noastră de informatii în limba dvs. materna. Totuși, un articol tradus automat nu este întotdeauna perfect. Acesta poate conține greșeli de vocabular, sintaxă sau gramatică, la fel cum un vorbitor străin poate face greșeli vorbind limba dvs. materna. Compania Microsoft nu este responsabilă pentru nici o inexactitate, eroare sau daună cauzată de traducerea necorespunzătoare a conținutului sau de utilizarea traducerii necorespunzătoare de către clienții nostri. De asemenea, Microsoft actualizează frecvent software-ul de traducere automată.
Face?i clic aici pentru a vizualiza versiunea în limba engleză a acestui articol:2662301

Trimite?i feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com