Momentálne ste offline a čaká sa, kým sa znova pripojíte na internet

Oprava: Problémy s výkonom dôjde zvýšenie aktivity uzamknutia databázy SQL Server

DÔLEŽITÉ: Tento článok je preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft a možno ho opraviť prostredníctvom technológie Community Translation Framework (CTF). Microsoft ponúka strojovo preložené články, články upravené komunitou aj články preložené prekladateľmi, aby zabezpečil prístup ku všetkým článkom databázy Knowledge Base vo viacerých jazykoch. Strojovo preložené články aj upravené články môžu obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky. Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené neprávnym prekladom obsahu alebo jeho použitím zo strany našich zákazníkov. Ďalšie informácie o technológii CTF nájdete na lokalite http://support.microsoft.com/gp/machine-translation-corrections/sk.

Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem: 2926217
Poznámka
Predvolene Service Pack 1 pre SQL Server 2014 obsahuje túto opravu a nemáte pridať príznaky sledovania umožniť opraviť. Umožniť opraviť po môžete nainštalovať kumulatívnej aktualizácie v časti riešenie, musíte spustiť Microsoft SQL Server pridaním príznak sledovania 1236 spúšťacie parametre.
Príznaky
Predpokladajme, spustiť inštanciu programu Microsoft SQL Server 2014, SQL Server 2012, SQL Server 2008 alebo SQL Server 2008 R2 na počítači, ktorý obsahuje veľa procesorov. Keď počet uzamknutí (typ prostriedku = databáza) pre konkrétne databázy presahuje určitý prah, sa vyskytnúť nasledujúce problémy s výkonom:
  • Zvýšené hodnoty vyskytnúť LOCK_HASH spinlock počet.

    Poznámka: Návod na sledovanie tejto spinlock nájdete v časti "Ďalšie informácie".
  • Otázky alebo operácie, ktoré vyžadujú databázy locks trvať dlho dokončiť. Napríklad si môžete všimnúť nasledovné oneskorenia výkon:
    • Prihlásenie na server SQL Server
    • Prepojený server dotazov
    • sp_reset_connection
    • Transakcie
Poznámka: Vyhľadať zoznam locks (typ prostriedku = databáza) na danej databázy, nájdete v časti "Ďalšie informácie". Prahová hodnota závisí od prostredia.
Riešenie

Kumulatívna aktualizácia informácií

Tento problém bol najskôr odstránený v nasledujúcej kumulatívnej aktualizácie servera SQL Server.

Kumulatívna aktualizácia 13 pre SQL Server 2008 R2 SP2

Kumulatívna aktualizácia 17 SQL Server 2008 SP3

Kumulatívna aktualizácia 1 pre SQL Server 2014

Kumulatívna aktualizácia 9 pre SQL Server 2012 SP1

Informácie o kumulatívnej aktualizácie pre server SQL Server

Každý nový Kumulatívna aktualizácia pre SQL Server obsahuje všetky rýchlych a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej kumulatívnej aktualizácie. Pozrite sa na najnovšie kumulatívnej aktualizácie pre server SQL Server:

Informácie o rýchlej oprave

Od spoločnosti Microsoft je k dispozícii podporovaná rýchla oprava. Táto rýchla oprava je však určená iba opravu problému, ktorý je popísaný v tomto článku. Rýchlu opravu použite len v počítačoch s týmto konkrétnym problémom.

Ak je rýchla oprava k dispozícii na stiahnutie, na začiatku tohto článku databázy Knowledge Base sa nachádza časť „K díspozícii je rýchla oprava na stiahnutie“. Ak sa táto sekcia nezobrazuje, odošlite požiadavku na služby zákazníkom spoločnosti Microsoft a podporu získať rýchlu opravu.

Poznámka: Ak sa vyskytnú ďalšie problémy alebo ak je potrebné, budete musieť vytvoriť samostatnú servisnú požiadavku. Poplatkoch za poskytovanie technickej podpory sa budú vzťahovať na dodatočnú podporu otázky a problémy, ktoré sa netýkajú tejto konkrétnej rýchlej opravy. Úplný zoznam služieb zákazníkom spoločnosti Microsoft a podpora telefónne čísla alebo vytvorte samostatnú servisnú požiadavku, navštívte nasledujúcu webovú lokalitu spoločnosti Microsoft: Poznámka: "Rýchla oprava k dispozícii na prevzatie" formulár sa zobrazujú jazyky, pre ktoré je rýchla oprava k dispozícii. Ak nemôžete nájsť požadovaný jazyk, znamená to, že rýchla oprava nie je pre tento jazyk k dispozícii.

Stav
Spoločnosť Microsoft potvrdila, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v časti Vzťahuje sa na.
Ďalšie informácie
Keď aplikácia pripojenie k serveru SQL Server, zistí najprv kontext databázy. Na základe predvoleného nastavenia pripojenia sa pokúsi získať zámok databázy v režime SH. SH databázy zámok sa uvoľní, pripojenie je zastavená alebo kontext databázy sa zmení počas pripojenia. Máte veľa aktívnych pripojení, ktoré používajú databázu súvislosti môže mať mnoho locks typu databáza prostriedkov pre konkrétne databázy.

V počítači s procesormi 16 alebo viac, len tabuľka objekty používať rozdelený Uzamknutie systému. Databáza locks však nie sú oblastí. Preto väčší počet databázy uzamknutie, dlhšie trvá získať zámok databázy SQL Server. Väčšina aplikácií nie problémov spôsobených tohto návrhu. Ale ako číslo presahuje určitý prah, prácou a čas získať zámok. Hoci náklady len micro sekúnd pre každý ďalší zámok, celkový čas môžete rýchlo zvýšiť, pretože zámok hash segmentov chránených pomocou spinlock. To spôsobí ďalšie cykly Procesora a čaká na ďalšie pracovníkov získať zámok.

Rýchla oprava obsahuje databázy zámok oblastí, ak je povolený príznak sledovania T1236, pri spustení. Hĺbka lock zoznam oblastí zámok databázy stále zvládnuteľné v každej miestnej oblasti. To výrazne optimalizuje prístup cesta možno získať zámok databázy .

Monitorovanie LOCK_HASH spinlock, môžete použiť nasledujúce dotazu.
SET NOCOUNT ONCREATE TABLE #spinlock_stats([CaptureTime] datetime,[name] nvarchar(512),[collisions] bigint,[spins] bigint,[spins_per_collision] real,[sleep_time] bigint,[backoffs] int)DECLARE @counter int = 1WHILE @counter < 100      BEGIN            INSERT INTO #spinlock_stats SELECT GETDATE() as "CaptureTime" , * FROM sys.dm_os_spinlock_stats WHERE [name] = 'LOCK_HASH'            WAITFOR DELAY '00:00:05'            SET @counter +=1      ENDSELECT * FROM #spinlock_stats ORDER BY [CaptureTime]DROP TABLE #spinlock_stats
Ďalšie informácie o diagnostikovaní a riešení sporu spinlock na serveri SQL Server, prejdite na nasledujúci dokument:

Poznámka: Napriek tomu, že tento dokument je napísaný pre SQL Server 2008 R2, informácia aj pre SQL Server 2012.
Odkazy
Ďalšie informácie o príznaky sledovania SQL Server 2012, prejdite na nasledujúcu webovú lokalitu TechNet:


Ďalšie informácie o vyhľadaní počet uzamknutí databázy v jednej databázy pomocou nasledujúceho dotazu výpočet tejto hodnoty:
select  Resource_database_id, resource_type, request_mode, request_status,  count (*) 'LockCount' from sys.dm_tran_locks group by  Resource_database_id, resource_type, request_mode, request_status


Upozornenie: Tento článok bol preložený automaticky.

Vlastnosti

ID článku: 2926217 – Posledná kontrola: 07/29/2015 14:20:00 – Revízia: 6.0

Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Web, Microsoft SQL Server 2012 Service Pack 1, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2008 Service Pack 3, Microsoft SQL Server 2008 R2 Service Pack 2

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbautohotfix kbhotfixserver kbmt KB2926217 KbMtsk
Pripomienky