Oprava: Pomalu dojde v systému SQL Server 2008 R2 nebo SQL Server 2012 vysoké využití procesoru je s konflikty pozorované prostřednictvím QUERY_EXEC_STATS spinlock

Překlady článku Překlady článku
ID článku: 2662301 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Společnost Microsoft distribuuje Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) nebo Microsoft SQL Server 2012 řeší v jednom souboru ke stažení. Protože opravy jsou kumulativní a každá nová verze tedy obsahuje všechny opravy hotfix a všechny aktualizace zabezpečení, které byly součástí předchozích SQL Server 2008 R2 Service Pack 1 (SP1) nebo Microsoft SQL Server 2012 vydání aktualizace.

Příznaky

Zvažte následující scénář:
  • Instance Microsoft SQL Server 2008 R2 nebo Microsoft SQL Server 2012 nainstalujete do počítače.
  • Souběžné podobné následujícím nejsou prováděny v instanci:
    CREATE PROC p AS RETURN (
    query
    ); EXEC p;
    Nebo spustit dotaz, který obsahuje následující kód:

    IF EXISTS(
    subquery
    );
  • Je neustále vysoké využití procesoru a pracovních podprocesů jsou spustitelné pracovní.
  • Konflikty pro QUERY_EXEC_STATS spinlock je vysoká.
    Například počet spin možným kolizím a zpět mimo hodnoty QUERY_EXEC_STATS spinlock rychle zvýšit.
    Poznámka: Další informace o sledování QUERY_EXEC_STATS spinlock, naleznete v části "Další informace".

V tomto scénáři může dojít ke snížení výkonu.

Příčina

Toto vydání, protože dojde k serveru SQL Server 2008 R2 nebo SQL Server 2012 vytvoří a ničí některé struktury paměti o globální statistiky namísto jejich ukládání. To způsobuje omezení výkonu.

Řešení

Informace o kumulativní aktualizaci

SQL Server 2012

Oprava tohoto problému prvního vydání v kumulativní aktualizaci 1 pro SQL Server 2012. Další informace o tomto balíčku kumulativní aktualizace klepnutím na následující číslo článku:
2679368 Balíček kumulativní aktualizace 1 pro SQL Server 2012
Poznámka: Protože sestavení jsou kumulativní, každé nové verzi opravy obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozích 2012 SQL Server opravit vydání. Společnost Microsoft doporučuje zvážit použití nejnovější vydání oprava, která tuto opravu hotfix obsahovat. Další informace získáte klepnutím na následující číslo článku:
2692828 SQL Server 2012 vytvoří vydané po vydání SQL Server 2012
K instalaci serveru SQL Server 2012 musí použít opravu hotfix serveru SQL Server 2012.

5 Balíčku kumulativní aktualizace pro SQL Server 2008 R2 SP1

Oprava tohoto problému vydání kumulativní aktualizace 5. Další informace o získání tohoto balíčku kumulativní aktualizace pro SQL Server 2008 R2 SP1 získáte v článku znalostní báze Microsoft Knowledge Base:
2659694 5 Balíčku kumulativní aktualizace pro SQL Server 2008 R2 SP1
Poznámka: Protože sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozích program SQL Server 2008 R2 SP1 verzí oprav. Doporučujeme zvážit použití nejnovější vydání oprava, která tuto opravu hotfix obsahovat. Další informace získáte klepnutím na následující číslo článku:
2567616 SQL Server 2008 R2 sestavení, které byly vydány po vydání aktualizace SQL Server 2008 R2 SP1

Další informace

Chcete-li sledovat QUERY_EXEC_STATS spinlock nastavit zpoždění a počet iterací, vhodné pro vaše prostředí následující kód a spusťte jej:

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

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části "Platí pro".

Vlastnosti

ID článku: 2662301 - Poslední aktualizace: 12. dubna 2012 - Revize: 1.0
Informace v tomto článku jsou určeny pro produkt:
  • 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
Klíčová slova: 
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2662301 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:2662301

Dejte nám zpětnou vazbu

 

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