Způsobu generování skriptu metadata databáze nezbytné vytvořit databázi jen pro statistiku serveru SQL Server 2005 a SQL Server 2008

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

ÚVOD

Optimalizátor dotazů, v roce 2005 Microsoft SQL Server nebo Microsoft SQL Server 2008 používá k určení plán optimální dotaz následující typy údajů:
  • Metadata databáze
  • Hardwarová prostředí
  • Stav relace databáze
Pokud chcete reprodukci chování Optimalizátor dotazů v testu systému se obvykle musí simulovat všechny tyto stejné typy informací.

Technickou podporu společnosti Microsoft dotaz Generovat skriptu metadata databáze. Technickou podporu společnosti Microsoft používá tento skript metadata databáze Optimalizátor problém prozkoumat. Tento článek popisuje kroky, které je třeba generovat statistiky skriptu. Článek také popisuje jak Optimalizátor dotazů použije informace.

Další informace

Používáte-li před provedením kroků ke generování skriptu SQL Server 2005, přesvědčte, zda SQL Server Management Studio verze SQL Server 2005 Service Pack 2 nebo novější. Pokud používáte dřívější verze SQL Server Management Studio serveru SQL Server 2005, Průvodce skript neobsahuje všechny potřebné možnosti pro kroky v tomto článku ke správnému.

Skript celou databázi.

Při generování klon pouze statistiky databáze může být jednodušší a spolehlivější na celou databázi namísto na jednotlivé objekty skriptování pomocí skriptu. Když je skriptu celou databázi, zobrazí následující výhody:
  • Je-li se vyhnout problémům s chybějící závislých objektů, které jsou nutné pro reprodukci problému.
  • Vyberte objekty, nezbytné výrazně méně kroků požadujete.
Poznámka: Pokud generujete skript pro databázi a metadata pro databáze obsahuje tisíce objekty, skriptovací proces spotřebovává značné prostředky PROCESORU. Doporučujeme, abyste generování skriptu době mimo špičku. Nebo můžete použít druhou možnost ke generování skriptu pro jednotlivé objekty.

Chcete-li skriptu jednotlivých databází, který odkazuje váš dotaz, postupujte takto:
  1. Otevřete-li SQL Server Management Studio.
  2. V Průzkumník objektůdatabáze rozbalte a potom vyhledejte databázi, kterou chcete skript.
  3. Klepněte pravým tlačítkem myši na databázi, přejděte na příkaz úkoly a potom klepněte na položku Generovat skripty.
  4. V Průvodci skript ověřte, zda je vybrána správné databázi. Klepnutím zaškrtněte políčko skript všechny objekty ve vybrané databázi a klepněte na tlačítko Další.
  5. V dialogovém okně Zvolit možnosti skriptu změnit následující nastavení z výchozí hodnoty hodnotu, která je uvedena v následující tabulce.
    Zmenšit tuto tabulkuRozšířit tuto tabulku
    Skriptování a klepněte na možnostVyberte hodnotu
    Výplň ANSITrue
    Pokračovat na chyby skriptováníTrue
    Generování skriptu pro závislé objektyTrue
    Zahrnout názvy omezení systémuTrue
    Skript řazeníTrue
    Vytváření skriptů databázeTrue
    Skript přihlášeníTrue
    Skript objektu úrovně oprávněníTrue
    Skript StatistikaSkript Statistika a histogramech
    Indexy skriptuTrue
    Aktivační události skriptuTrue
    Poznámka:Skript přihlášení volbu a volbu Skriptovací objekt úroveň oprávnění nelze vyžadovat pokud schéma obsahuje objekty, které jsou majetkem přihlášení než dbo.
  6. Klepněte na tlačítko Další.
  7. Klepněte na možnost skript do souboru a potom zadejte název souboru.
  8. Klepněte na tlačítko Dokončit.

Jednotlivé objekty skriptu

Můžete pouze skript jednotlivé objekty, které odkazuje zejména dotazu namísto skriptování databáze dokončeno. Však pokud všechny databázové objekty byly vytvořeny pomocí klauzule WITH SCHEMABINDING, závislosti informace v tabulce systému sys.depends nemusí být vždy přesné. Tuto nepřesnost může způsobit, že jedním z následujících problémů:
  • Skriptovací procesu skriptu není závislý objekt.
  • Skriptovací procesu může skriptu objektů v nesprávné pořadí. Chcete-li úspěšně spustit skript, musíte ručně upravit generovaný skript.
Skript jednotlivé objekty, pokud databáze obsahuje velké množství objektů a skriptování by jinak trvat příliš dlouho, proto nedoporučujeme. Pokud je nutné použít skript jednotlivé objekty, postupujte takto:
  1. V nástroji SQL Server Management Studio rozbalte databáze a potom vyhledejte databázi, kterou chcete skript.
  2. Klepněte pravým tlačítkem myši na databázi, přejděte na příkaz Skriptu databáze jako, příkaz CREATE na a klepněte na příkaz soubor.
  3. Zadejte název souboru a klepněte na tlačítko Uložit.

    Bude se scripted jádra databázového kontejneru. Tento kontejner obsahuje soubory, skupiny souborů, databáze a vlastnosti.
  4. Klepněte pravým tlačítkem myši na databázi, přejděte na příkaz úkoly a potom klepněte na položku Generovat skripty.
  5. Musí být zaškrtnuto správné databázi a potom klepněte na tlačítko Další.
  6. V dialogovém okně Zvolit možnosti skriptu změnit následující nastavení z výchozí hodnoty hodnotu, která je uvedena v následující tabulce.
    Zmenšit tuto tabulkuRozšířit tuto tabulku
    Skriptování a klepněte na možnostVyberte hodnotu
    Výplň ANSITrue
    Pokračovat na chyby skriptováníTrue
    Zahrnout názvy omezení systémuTrue
    Generování skriptu pro závislé objektyTrue
    Skript řazeníTrue
    Skript přihlášeníTrue
    Skript objektu úrovně oprávněníTrue
    Skript StatistikaSkript Statistika a histogramech
    Skript USE DATABASETrue
    Indexy skriptuTrue
    Aktivační události skriptuTrue
    Poznámka:Skript přihlášení volbu a volbu Skriptovací objekt úroveň oprávnění nelze vyžadovat pokud schéma obsahuje objekty, které jsou majetkem přihlášení než dbo.
  7. V dialogovém okně Vybrat typy objektů vyberte všechny typy objektu databáze, problematické dotaz odkazuje.

    Například pokud definice dotazu odkazuje pouze tabulky, vyberte tabulky. Pokud dotaz odkazuje na zobrazení, vyberte zobrazení a tabulky. Je-li problematický dotaz používá uživatelem definovanou funkci, vyberte funkce.
  8. Pokud jste vybrali všechny typy objektů, které odkazuje dotazu, klepněte na tlačítko Další.
  9. Zobrazí se dialogové okno pro každý typ objektu databáze, kterou jste vybrali v kroku 7. V každém dialogovém vyberte konkrétní tabulky, zobrazení, funkce nebo ostatní databázové objekty a potom klepněte na tlačítko Další.
  10. Klepněte na možnost skript do souboru a potom zadejte stejný název souboru, který jste zadali v kroku 3.
  11. Klepněte na tlačítko Dokončit spustíte skriptování.
Po dokončení skriptování, odeslání souboru skriptu pracovníka podpory společnosti Microsoft. Analýza odborné pomoci společnosti Microsoft může rovněž požádat následující informace:
  • Konfiguraci hardwaru, včetně počtu procesorů a velikost fyzické paměti existuje
  • SET možnosti, které byly aktivní při spuštění dotazu
Poznámka: Vám může již poskytly tyto informace odesláním SQLDiag sestavy nebo trasování SQL Profiler. Vám může mít také lze jinou metodu zajistit tyto informace.

Jak budou informace použity

V následujících tabulkách vysvětlit způsob Optimalizátor dotazů tuto informaci použije k vyberte plán dotazů.

Metadata

Zmenšit tuto tabulkuRozšířit tuto tabulku
OmezeníOmezení dotazu Optimalizátor často používá ke zjištění contradictions mezi dotazu a základní schéma. Dotaz má-li například "WHERE sloupec = 5" klauzule a „ CHECK (sloupec < 5)"kontrolní omezení existuje, Optimalizátor dotazů ví, že bude odpovídat žádné řádky.

Optimalizátor dotazů díky podobné typy srážek o nullability. Například klauzule "WHERE sloupec IS NULL" je znám jako PRAVDA nebo NEPRAVDA v závislosti na nullability sloupce a určuje, zda je sloupec z vnější tabulky vnější spojení. Přítomnost omezení FOREIGN KEY je užitečné k určení mohutnost a pořadí vhodné spojení. Optimalizátor dotazů lze informace omezení vyloučení spojení nebo zjednodušení predikáty. Tyto změny mohou odstranit požadavek na přístup základních tabulek.
StatistikyStatistické údaje obsahuje hustoty a histogram zobrazující úvodní sloupce indexu a statistiky klíč rozdělení. V závislosti na povaze predikátů Optimalizátor dotazů pomocí lze hustota, histogramu nebo obojí odhad mohutnost predikátu. Aktuální statistické údaje ke, je nutné mohutnost přesné odhady. Odhady Mohutnost se používají jako vstup při odhadování nákladů operátor. Proto musí mít dobrou mohutnost odhady získat optimální dotaz plány.
Velikost tabulky (počet řádků a stránek)Optimalizátor dotazů použije histogramy a hustota vypočítat pravděpodobnost, že dané predikát hodnotu true nebo false. Odhad konečné mohutnost bude vypočtena vynásobením pravděpodobnosti podle počtu řádků, které jsou vrácená operátorem podřízené. Počet stránek v tabulce nebo indexu je faktorem při odhadování nákladů vstupně-výstupní. Velikost tabulky se používá k výpočtu nákladů prohledávání a je užitečné při odhadnout počet stránek, které bude přístupná během hledání indexu.
Možnosti databázeNěkolik možností databáze může ovlivnit optimalizace. Možnosti AUTO_CREATE_STATISTICS a AUTO_UPDATE_STATISTICS ovlivnit, zda Optimalizátor dotazu vytvoří nové statistické údaje nebo aktualizace statistiky, které jsou zastaralé. Úroveň PARAMETRIZACE ovlivňuje, jak je dotaz vstupní parametry před vstupní dotazu je předán Optimalizátor dotazů. Parametrizace mohou ovlivnit odhad mohutnost a může také zabránit odpovídající proti indexovaná zobrazení a další typy optimalizace. Nastavení DATE_CORRELATION_OPTIMIZATION způsobí Optimalizátor vyhledávání korelace mezi sloupci. Toto nastavení má vliv na odhad mohutnost a náklady.

Prostředí

Zmenšit tuto tabulkuRozšířit tuto tabulku
Možnosti SET relaceANSI_NULLS, zda nastavení má vliv "NULL = NULL" výraz vyhodnocen jako pravdivé. Mohutnost odhad pro vnější spojení může měnit v závislosti na aktuální nastavení. Kromě toho dvojznačný výrazy také mohou změnit. Například "sloupec = NULL" výraz vyhodnocen jako odlišně v závislosti na nastavení. Nicméně "sloupec IS NULL" vždy výraz vyhodnocen jako stejným způsobem.
Hardwarové prostředkyNáklady pro řazení a hash operátory závisí na relativní velikost paměti, které je k dispozici pro SQL Server. Například jestliže velikost dat přesahuje do mezipaměti, Optimalizátor dotazů ví, že data musí vždy být zařazen na disk. Pokud je velikost dat mnohem menší než mezipaměti, operace je však mohly být provedeny v paměti. SQL Server také považuje za různých optimalizace, pokud má server více než jeden procesor a pokud paralelnost není zakázal pomocí nápovědy "MAXDOP" nebo možnost konfigurace Maximální stupeň paralelnost.
Burzovní server SQL dodržením jednotka (SKU)Některé funkce jsou povolena pouze v určité verze serveru SQL Server 2005 nebo SQL Server 2008. Například vyhovující dotazu proti indexovaných zobrazení dochází pouze v serveru SQL Server 2005 Enterprise Edition. Podobně odpovídající proti vodítka plán omezen na SQL Server 2000 Standard Edition a SQL Server 2005 Enterprise Edition.

Vlastnosti

ID článku: 914288 - Poslední aktualizace: 7. dubna 2009 - Revize: 3.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
Klíčová slova: 
kbmt kbexpertiseinter kbexpertiseadvanced kbsql2005engine kbhowto kbinfo KB914288 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:914288

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