Jak řešit zpomalit spuštění dotazů na SQL Server 7.0 nebo novější verze

Překlady článku Překlady článku
ID článku: 243589 - 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

Souhrn

Tento článek popisuje, jak zpracovat výkonu problém, může aplikace dochází ve spojení s Microsoft SQL Server: zpomalit výkon konkrétní dotaz nebo skupiny dotazů. Pokud řešíte problém výkon, ale není problémovou problém konkrétní dotaz nebo malé skupiny dotazů provádět pomaleji, než bylo očekáváno, naleznete v následujícím článku v databáze Microsoft Knowledge Base před pokračovat:
224587Postupy: Poradce výkonu aplikací se serverem SQL
Tento článek je založena na předpokladu, že jste použili článku 224587 zúžit rozsah problému a že jste zachycené trasování SQL Profiler s určité sloupce dat a událostí, které podrobně v článku 224587.

Optimalizace dotazů databáze může být multi-faceted endeavor. Následující oddíly popisují běžné položky prozkoumejte při zkoumání výkonu dotazu.

Poznámka: Používáte SQL Server 2005, SQL Server Management Studio použít namísto SQL Query Analyzer a použít místo Průvodce optimalizací Index Advisor optimalizací Database Engine.

Ověřit existenci správné indexy

Jeden první kontroly provádět při dochází časy spuštění pomalé dotazu je index analýzy. Pokud jsou zkoumání jediného dotazu, můžete použít možnost Provést analýzu index v SQL Query Analyzer; Pokud máte SQL Profiler trasování velké zatížení, můžete použít Průvodce optimalizací index. Obě metody použít k určení indexů, které by být užitečné pro dotazy určené Optimalizátor dotazů serveru SQL. To je velmi efektivní metodu pro určení, zda existují správné indexů v databázi.

Informace o použití Průvodce optimalizací index v tématu "Průvodce optimalizací index" SQL Server 7.0 Books Online.

Pokud aplikace jste inovovali z předchozí verze produktu SQL Server, indexy různých může být efektivnější v SQL Server 7.0 kvůli Optimalizátor a změny stroj úložiště. Průvodce optimalizací index umožňuje určit, pokud by změna v indexování strategie výkon.

Další informace o tom, jak použít místo Průvodce optimalizací indexu v SQL Server 2005 Database Engine optimalizací Advisor naleznete následující témata v SQL Server 2005 Books Online:
  • Rozdíly mezi databází modul ladění Advisor a indexovat ladění Průvodce
  • Kurz Advisor Engine optimalizací databáze

Odebrat všechny dotazu, tabulky a tipy spojení

Rady přepsat optimalizace dotazu a může zabránit volba nejrychlejší plán provádění Optimalizátor dotazu. Z důvodu změn Optimalizátor rady, vylepšený výkon starší verze serveru SQL může mít žádný vliv, nebo může ve skutečnosti nepříznivě ovlivnit výkon serveru SQL Server 7.0. Rady spojení může navíc způsobit snížení výkonu na základě následujících důvodů:
  • Rady spojení zabránit ad hoc dotazu zabráníte způsobilý pro automatické Parametrizace a ukládání do mezipaměti plán dotazů.
  • Použijte nápovědu pro spojení znamená, že chcete vynutit spojení objednávky pro všechny tabulky v dotazu, i když tyto spojení nepoužívejte explicitně nápovědu.
Pokud dotaz jsou analýza zahrnuje všechny tipy, odeberte je a přehodnotit výkon.

Prozkoumejte plán spuštění

Po potvrzení, existují správné indexy a že žádné odkazy jsou omezením Optimalizátor schopnost generovat efektivní plánu můžete zkontrolovat plán spuštění dotazu. Zobrazit plán provádění dotazu lze použít následující metody:
  • SQL Profiler

    Zachycené MISC:Execution plán událostí v SQL Profiler jej dojde bezprostředně před událostí StmtCompleted dotazu konkrétním systému ID procesu (SPID).
  • SQL Query Analyzer: grafické Showplan

    S dotazem vybrané v okně dotazu nabídce dotaz klepněte na příkaz Zobrazit předpokládané spuštění plánování.

    Poznámka: uložené procedury nebo dávkové vytvoří a odkazuje dočasných tabulek, se musí použít příkaz SET PROFILU STATISTICS ON nebo explicitně vytvoření dočasných tabulek před zobrazit plán vykonání.
  • SHOWPLAN_ALL a SHOWPLAN_TEXT

    Přijímat text verzi plán odhadované spuštění, můžete použít možnosti SET SHOWPLAN_ALL a SET SHOWPLAN_TEXT. V tématu "SET SHOWPLAN_ALL (T-SQL)" a "SET SHOWPLAN_TEXT (T-SQL)" témata v SQL Server 7.0 Books Online Další podrobnosti.

    Poznámka: uložené procedury nebo dávkové vytvoří a odkazuje dočasných tabulek, můžete musí použít možnost ON SET STATISTICS PROFILU nebo explicitně vytvoření dočasných tabulek před zobrazením plán provádění.
  • STATISTICS PROFILU

    Plán vykonání odhadované jsou zobrazení, graficky nebo pomocí SHOWPLAN, není ve skutečnosti spuštěn dotaz. Proto pokud vytvoření dočasných tabulek v dávce nebo uložené procedury nelze zobrazit plány odhadované provádění protože dočasných tabulek bude neexistuje. PROFIL STATISTICS nejprve provede dotaz a zobrazí plán provedení skutečné. V tématu "SET STATISTICS PROFILU (T-SQL)" v SQL Server 7.0 Books Online Další podrobnosti. Když je spuštěn v SQL Query Analyzer, se objeví v grafickém formátu na kartě Plán spuštění v podokně výsledků.
Další informace o tom, jak zobrazit plán vykonání odhadované SQL Server 2005 naleznete v tématu „ Jak zobrazit plán vykonání odhadované „ v SQL Server 2005 Books Online.

Prohlédněte si výstup Showplan

Poskytuje výstup showplan šarže informace o plán vykonání SQL Server pomocí pro určitý dotaz. Podrobnosti jsou generovány události a informace jsou popsány v podrobností v kapitole "Optimalizace výkonu databáze" SQL Server 7.0 Books Online. Některé základní aspekty plán spuštění můžete zobrazit určit, zda používáte nejlepší plánu jsou následující:
  • Správné používání index

    Výstup showplan zobrazí jednotlivé tabulky je zapojen v dotazu a přístup k cestě, který slouží k získání dat z něj. S grafické showplan přesuňte ukazatel nad tabulku zobrazíte podrobnosti pro každou tabulku. Index je používán, uvidíte "Rejstřík hledání"; Pokud index není použití, viz buď "Tabulka vyhledat" haldu nebo "Zařazených do clusteru index vyhledat" tabulku obsahující seskupený index. "Seskupený index skener" označuje, že je v tabulce skenované prostřednictvím seskupený index, nikoli, seskupený index je používán přímo přístup jednotlivých řádků.

    Určit užitečné indexu existuje a není právě používán pro dotaz, můžete zkusit vynucení indexu pomocí rejstříku nápovědy. V tématu "FROM (T-SQL)" v SQL Server Books Online Další podrobnosti o rejstříku rady.
  • Správné pořadí připojení

    Výstup showplan označuje, v jakém pořadí jsou spojeny tabulky, které přicházejí v dotazu. Vnořené smyčky spojení horní tabulka, která je uvedena je vnější tabulka a by měla být menší dvou tabulek. Pro spojení hash horní tabulce stane vstup sestavení a měla by být také menší dvou tabulek. Uvědomte si však, že objednávka je méně důležité, protože procesor dotazu lze zpětné sestavení a sonda vstupů v době spuštění, pokud nalezne Optimalizátor provedené nesprávné rozhodnutí. Můžete určit, které tabulky kontrolou odhadne počet řádků ve výstupu showplan vrací méně řádků.

    Určit dotazu může výhodou různých spojení objednávky můžete zkusit vynucení spojení objednávky s rada spojení. V tématu "FROM (T-SQL)" v SQL Server 7.0 Books Online Další podrobnosti o spojení rady.

    Poznámka: použití rada spojení v dotazu velké implicitně vynutí pořadí spojení pro druhé tabulky v dotazu jako Pokud nastavit FORCEPLAN.
  • Správný typ spojení

    SQL Server používá vnořené smyčky hash, a korespondence spojí. Zpomalit provádění dotazu je pomocí jednoho spojení technika přes jiné, můžete zkusit vynucení typu různých spojení. Například pokud dotaz pomocí spojení hash, můžete vynutit spojení vnořené smyčky pomocí spojení rada LOOP. V tématu "FROM (T-SQL)" v SQL Server 7.0 Books Online Další podrobnosti na spojení rady.

    Poznámka: použití rada spojení v dotazu velké implicitně vynutí typu spojení pro druhé tabulky v dotazu jako Pokud nastavit FORCEPLAN.
  • Paralelní spuštění

    Pokud používáte počítač s více procesory, můžete také zkoumání zda paralelní plánu je používán. Pokud parallelism je používán, viz události PARALLELISM (shromažďovat datové proudy). Konkrétní dotaz je pomalé, když je použití paralelní plánu, můžete zkusit vynucení-paralelní plánu pomocí rada OPTION (MAXDOP 1). V tématu "SELECT (T-SQL)" v SQL Server 7.0 Books Online Další podrobnosti.
Další informace o použití Showplan výstup plán vykonání SQL Server 2005 naleznete v následujících tématech v SQL Server 2005 Books Online:
  • Jak uložit plán spuštění ve formátu XML
  • XML Showplans
  • Zabezpečení showplan
Upozornění: protože Optimalizátor dotazu obvykle vybere nejvhodnější plán provádění dotazu Microsoft doporučuje pouze jako poslední možnost použití spojení tipy, rady dotazu a tabulky rady a pouze pokud jsou databáze zkušení správci.

Odkazy

V SQL Server 7.0 Books Online následující témata obsahují informace o optimalizace dotazů:
  • "Optimalizaci výkonu aplikací pomocí efektivní načítání dat"
  • "Dotaz"ladění
  • "Dotazu optimalizací doporučení"
  • "Jazyka transact-SQL tipy"

Vlastnosti

ID článku: 243589 - Poslední aktualizace: 15. prosince 2005 - Revize: 5.4
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 64-bit Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
Klíčová slova: 
kbmt kbhowtomaster KB243589 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:243589

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