Nové souběžnost a plánování diagnostiky byly přidány k serveru SQL Server

Překlady článku Překlady článku
ID článku: 319892 - Produkty, které se vztahují k tomuto článku.
BUG #: 102179 (SQLBUG_70)
BUG #: 356317 (SQLBUG_80)
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

SQL Server zůstat vysoce dynamické, obsahuje několik interní procesy pro zajištění stability. Jeden příklad je zámek monitor, který slouží k identifikaci a řešení situace zablokování.

SQL Server 7.0 Service Pack 4 (SP4) a SQL Server 2000 Service Pack 3 (SP3) přidali rozšířené sledování zdravotního stavu procesu. Vylepšení sledování zdraví se uskutečnily v následujících oblastech:
  • Blokování
  • Problémy se sítí
  • Vstupu a výstupu (I/O)
  • Paměti
  • PROCESOR
SQL Server při zjistí zdravotními potížemi, řadu nových chybových zpráv, například následující příkaz, zapsána do protokolu chyb serveru SQL Server. Další informace o těchto podmínek chybové zprávy naleznete v tématu „ Další informace"části tohoto článku.

SQL Server 7.0

Chyba 1223: ID procesu % d: % d nelze získat zámek "% s" na prostředku %s, protože existuje potenciální zablokování na Plánovač %d pro prostředek. Proces ID % d: % d drží zámek "% h" na tomto prostředku.

SQL Server 2000

Chyba 1229: ID procesu % d: % d vlastní prostředky, které jsou blokování procesy na Plánovač % d.
Nové chybové zprávy patří následující série.

Rozšířené zjišťování Uzamknout: 1223, 1229
Plánovač ztracené rozpoznávání: 17881, 17883
Všechny plánovače ztracené detekce: 17882, 17884
Upozornění Všimněte si, že problém související zdraví často v důsledku podmínku, která byla dříve došlo. Jste musí studijních protokolu chyb serveru SQL Server a systémové protokoly událostí opatrně, chcete-li určit příčinu skutečné kořenový.

17883 Chybová zpráva může například znamenat problém plánovače. Avšak protokolu chyb se mohou zobrazit předchozí výjimky, které nesprávně ponechána ve špatné stavu procesu serveru SQL Server nebo aplikace pravděpodobně způsobily závažné blokování podmínku.
Poznámka: Microsoft se pokouší aktualizovat veškerý obsah s nejnovější 17883 podmínkami. Zdraví zjišťování zprávu, která může být spuštěna z mnoha důvodů se však 17883 chybová zpráva. Společnost Microsoft má pouze neopravíte známé problémy týkající se softwarového produktu SQL Server, ale má také došlo k chybě 17883 v různých situacích, které nesouvisející software SQL Server. Například došlo k chybě s externí aplikace spotřeby PROCESORU a selhání hardwaru. Pokud chcete nedošlo nežádoucí reoccurrence došlo k chybě, je nutné určit prvotní příčinu 17883 chybovou zprávu.

Další informace

Tato část popisuje vylepšení zdraví a přidružené chybové zprávy, které může být přihlášen k protokolu chyb serveru SQL Server.

UMS

Některé další zdraví diagnostiky lépe pochopit, je musíte nejprve porozumět jak SQL Server používá soubor pomocné ums.dll uživatelského režimu plánování (UMS) společnosti.

SQL Server 7.0 i Microsoft SQL Server 2000 používají logické plánovače. Tyto plánovače pomoci a ujistěte se, že SQL Server maximalizuje využití prostředků operačního systému ve vztahu k akci cesty klíče databáze. Vrstva UMS společnosti zajišťuje, že používá SQL Server správně Win32 události přísně řízení podprocesu a fiber (nebo obojí) plánování viditelnost operačnímu systému. Řízením výhradně na podprocesy nebo vlákna, které lze spustit, může SQL Server maximalizovat využití PROCESORU ve vztahu k základní databáze jako uzamčení.

Například logické plánování povolení zámku waiters do režimu spánku (WaitForSingleObject na události Win32) dokud vlastník uzamčení uvolní zámek a signály (SetEvent) je probuzení.

Rozšířený zámek zjišťování

Monitor Zámek byl rozšířen ke zjištění blokování scénář (pracovní podproces) prostředku úrovně. Pokud jsou ve stavu čekání un-resolvable SPID, vlastnící že zámek je aktuálně ve frontě na Plánovač, protože jste jsou vytvořeny všechny přiřazených pracovních podprocesů a všech přiřazených pracovních podprocesů, je do protokolu chyb serveru SQL Server zaznamenána následující chybová zpráva:

SQL Server 7.0

Chyba 1223: ID procesu % d: % d nelze získat zámek "% s" na prostředku %s, protože existuje potenciální zablokování na Plánovač %d pro prostředek. ID procesu % d: % d drží zámek "% h" na tomto prostředku.
Popis parametru:
  1. Čekání SPID
  2. Čekání na ECID (Sub proces spuštění ID)
  3. Název režimu uzamčení
  4. Název zdroje
  5. ID plánovače logické UMS společnosti
  6. Vlastnící SPID
  7. Vlastnící ECID
  8. Vlastnící název zdroje

SQL Server 2000

Chyba 1229: ID procesu % d: % d vlastní prostředky, které jsou blokování procesy na Plánovač % d.
Parametr Popis:
  1. Vlastnící SPID
  2. Vlastnící ECID (Sub proces spuštění ID)
  3. ID plánovače logických UMS společnosti vlastnící

Trasování příznaky

SQL Server obsahuje příznak trasování zakázat hlášení zdraví.

Chcete-li zakázat hlášení chování, použijte jednu z následujících metod:
  • Vytvořit spouštěcí parametr (-T ###)
  • Použití DBCC traceon (###)
SQL Server 7.0:-T1216

SQL Server 2000:-T1261

Poznámka: Nejedná se o chybu typografických. -T1216 na serveru SQL Server 2000 je již použit jako příznak trasování přidružené k zablokování výstupu. Proto 1261 je použít místo.

Ukázkový scénář

Klient 1 se připojuje k serveru SQL Server.

Klient 1 spustí příkaz Transact-SQL, který transakci spustí a provede změnu data.

Například:
begin tran
update authors set au_lname = 'test'
stane klienta 1 IDLE pořadů až jako v režimu spánku a čeká na příkaz s otevřené transakce v tabulce sysprocesses systému.

Klienti 2 do 255: délka 254 více klientů přihlásit k serveru SQL Server a vydat SELECT z tabulky autorů. Tito klienti budou všechny stanou blokováno na původní aktualizace.

Klient 1 pokusí potvrzení transakce, ale bude zařazen do fronty protože pracovních podprocesů jsou vázány klienty 2 do 255.

Blokování

Tato chybová zpráva označuje běžně rozšířené blokování situace. Při každém spuštění monitor zámku (přibližně každých 5 sekund), zprávy mohou být přidány do protokolu chyb serveru SQL Server.

Poznámka: Zpráva je protokolována pro každé číslo SPID/ECID, kde dochází k problému prostředku. Několik zpráv proto může být přihlášen během stejného monitoru opakování zámku.

SQL Server automaticky tuto situaci nevyřeší. Však jej bude označovat problém jako chybová zpráva (1223 nebo 1229) odpovídajícím způsobem. Když nastane tento problém, můžete vyřešit v několika způsoby.

Časový limit uzamčení nebo dotazu

Pokud dotazů použít zámek nebo časový limit dotazu, situace obvykle vyřeší sám časové limity se vyskytují. Situace však zaručuje šetření, protože označuje snížení aplikace vyvolaných v souběžnosti.

DEZAKTIVAČNÍ jazyka Transact-SQL

Správce je moci dotazovat systémové tabulky sysprocesses, mohou použít příkaz Transact-SQL USMRCENÍ ukončit SPID blokující a ukončit vhodné BLOKOVÁNY SPIDS volných pracovních podprocesů a vrátíte se do normálního stavu systému.
251004Jak sledovat blokování serveru SQL Server 7.0
271509Jak sledovat blokování serveru SQL Server 2000
263889Zamkne SQL blokování kvůli [KOMPILACE []]

Pomoc na podporu

Pokud nelze získat informace o tabulce sysprocesses systému, získáte výpis proces procesu (Sqlservr.exe) a požádejte o další šetření podporu Microsoft SQL Server.

Paralelní dotazy

Ve výjimečných případech tato chybová zpráva se může zobrazit z důvodu špatné paralelní dotazu plánu výběru. Pokud paralelní dotazu rozhodne provést dotaz pomocí významný počet pracovníků k dispozici serveru SQL Server, může výfukových plynů fondu pracovník serveru SQL Server. Systémové tabulky sysprocesses obsahuje sloupec ECID k označení počtu pracovníků, používané jménem jednotlivých SPID. Pokud je hodnota ECID vysoké ve vztahu k fyzické procesorů v počítači, je obecně údajem o špatně nastavené dotazu. Přečtěte si plán dotazů a nastavení správně optimalizovat dotaz dotyčné možnosti dotaz max stupeň paralelnost (MAXDOP).

Záležitosti plánovače

Počet logických plánovače záležitostech. Po spuštění serveru SQL je maximální pracovní podproces nastavení rovným dílem mezi logické plánovače. Jako zvyšuje počet procesorů, které jsou k dispozici pro SQL Server je rozdělen do fronty pracovních více. Aplikace, která vykazuje nežádoucí transakce obor činnosti může projevit scénáře nedostatku prostředků rychlejší při zapojení více procesorů. Pro tento typ scénář transakční obor aplikace okamžitě opravit.

Následující tabulka uvádí přiřazení fondu pracovník základě počtu procesorů, pokud sp_configure uložený postup nastavení pro maximální pracovních podprocesů je rovna 255.
Zmenšit tuto tabulkuRozšířit tuto tabulku
Blokování procesorůDélka řetězec
1255
2128
464
832
1616
Doporučujeme ponechat maximální pracovní podproces nastavení na výchozí hodnotu 255. Další informace získáte následujícím článku znalostní báze Microsoft:
319942Jak určit správné nastavení konfigurace serveru SQL

Zdraví UMS společnosti

Nový vnitřní rutina byla přidána ke kontrole zdravotní logické Plánovač každých 60 sekund. Jako pozastavena, se považuje za plánovače nebo přestala odpovídat, se příslušná chybová zpráva zaznamenána k protokolu chyb serveru SQL Server. Chyba je zaznamenána každých 60 sekund, dokud je problém vyřešen.

Jak již bylo zmíněno dříve, tyto zprávy jsou často údajem o předchozí události. Pečlivě naleznete serveru SQL Server chyby protokolu aplikace protokolů událostí a vám pomohou určit prvotní příčinu problému.

Poznámka: Snímek je převzata každých 60 sekund. Proto může být 120 sekund před zjištění stavu.

SQL Server 7.0

Chyba: 17881 - The Plánovač %1! ld! Zdá se být neodpovídá. PSS 0 x % 2! p!, ES 0 x % 3 p!, kontext UMS společnosti 0 x % 4 p!
Chyba: 17882 - potenciální zablokování existovat na všech plánovače

Trasování příznaky

Je možné zakázat tyto dvě kontroly-li spustit SQL Server 7.0 s -T1217 spouštěcí parametr.

SQL Server 2000 SP3

8.00.760 (SP3)
Chyba: 17883 - The Plánovač %1! ld! Zdá se být neodpovídá. Číslo SPID %2! ld!, ECID % 3! ld!, kontext UMS společnosti 0 x % 4 p!

8.00.765

Spuštění s 8.00.765, která je aktivní opravit, zprávy bylo změněno být výstižnější.
Chyba: zpracovat 17883 - %1! ld!: % 2! ld! (%3! lx!) Kontext UMS společnosti 0 x % 4 p! bude zobrazeno jako ne získávání na Plánovač %5! ld!

Příklad:
server 2003-03-21 08:22:20.27 Chyba: 17883, stupeň závažnosti: 1, stav: 0
server 2003-03-21 08:22:20.27 51:0 procesu (dbc) místní UMS společnosti 0x018DA930 zdánlivě bez získávání na Plánovač 0.
2003-03-21 0x00000000 je 08:22:22.45 server podpisu v zásobníku pro výpis stavu
Chyba: 17884 - potenciální zablokování existovat na všech plánovače

Trasování příznaky

Je-li spustit SQL Server můžete zakázat tyto dvě kontroly s parametrem spuštění-T1260.

SQL Server 2000 minimálním souboru

Počínaje SQL Server 2000 SP3, schopnost zachycení minimálním proces byl implementován. Počínaje sestavení 8.00.765, minimálním souboru se vytvoří, když SQL Server nejprve zjistí zablokované plánovače.

Chcete-li předejít pokračující generaci minimálním soubory pro tyto chybové zprávy (17883 and17884), výchozí chování je k vytvoření jediného souboru minimálním dobu životnosti procesu serveru SQL Server. Chcete-li povolit minimálním soubor pro všechny výskyty zpráv, zapněte příznak trasování - T1262.

Minimálním soubor je generován LOG složky a je SQLDmpr ### .mdmp. Tento soubor minimálním může být vyhodnocen podle odborné pomoci společnosti Microsoft, které vám mohou pomoci určit prvotní příčinu problému.

Chyba 17881 a chyba 17883

Tyto zprávy označují jeden Plánovač UMS společnosti má dojít k potížím výnos. Sledování zdravotního stavu zjistil zdánlivě Plánovač s pracovní podproces, který není povolil jiné pracovníky pokroku a příznakem plánovače jako reagovat. Plánovač, který přestal reagovat, je obecně chyba s produktem SQL Server nebo externí komponentu (XProc objektu COM a podobně).

Následují příklady podmínek známé 17833. Ujistěte se, že jste vyhledejte související články ve znalostní bázi Microsoft Knowledge Base. Pokud systému vyžaduje aktualizovanou opravu, použijte ji odpovídajícím způsobem.
815056Oprava: Proces kontroly může mít za následek zpoždění aktivita databáze serveru SQL Server a není výnosu Plánovač správně příčinou chyba: k 17883
810885Špičkové diskové podsystémy může dojít k chybě 17883
Pokud hlavní příčinu nelze určit okamžitě, naleznete v protokolu chyb problémy a zapojit se do rozšířené podpory úsilí.

Při plánovače správně neodpovídá, jej může snížit celkovou souběžnosti pro SQL Server. Se serveru SQL Server můžete také zdají být pozastavena nebo přestat reagovat.

Chyba 17882 a 17884

Tyto zprávy označují, že všechny plánovače UMS společnosti se setkaly výnosu problémy. To označuje, že široké problém systému SQL Server a SQL Server se objeví přestane odpovídat. Stejně jako zprávy 17881 a 17883 protokolu chyb a Microsoft Knowledge Base další informace naleznete. V případě potřeby vykonávat rozšířené podpory úsilí.

Vlastnosti

ID článku: 319892 - Poslední aktualizace: 18. května 2005 - Revize: 8.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 2000 Service Pack 3
  • Microsoft SQL Server 7.0 Service Pack 4
Klíčová slova: 
kbmt kbsample kberrmsg kbbug kbfix kbinfo KB319892 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:319892

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