Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Poradce pro ladění databázového systému vám pomůže ladit databáze, spravovat ladicí relace a zobrazovat doporučení pro ladění. Uživatelé s pokročilými znalostmi struktur fyzického návrhu mohou tento nástroj použít k provádění průzkumné analýzy ladění databáze. Začátečníci v ladění databází mohou také využít nástroj k nalezení nejlepší konfigurace struktur fyzického návrhu pro úlohy, které ladí. Tato lekce poskytuje základní praxi pro správce databází, kteří jsou nováčky v grafickém uživatelském rozhraní Database Engine Tuning Advisor, a pro správce systému, kteří nemusí mít rozsáhlé znalosti o návrhových strukturách fyzického prostředí.
Požadavky
K dokončení tohoto kurzu potřebujete SQL Server Management Studio, přístup k serveru, na kterém běží SQL Server, a k databázi AdventureWorks2025.
- Nainstalujte SQL Server Management Studio.
- Nainstalujte SQL Server 2017 Developer Edition.
- Stáhněte si ukázkové databáze AdventureWorks.
Pokyny k obnovení databází v nástroji SSMS najdete v tématu Obnovení zálohy databáze pomocí aplikace SSMS.
Poznámka:
Tento kurz je určený pro uživatele, který je obeznámen s používáním aplikace SQL Server Management Studio a základními úlohami správy databáze.
Ladění pracovní zátěže
Pomocí Poradce pro ladění databázového stroje vyhledejte nejlepší fyzický návrh databáze pro výkon dotazů u databází a tabulek, které vyberete pro ladění.
Zkopírujte ukázkový příkaz SELECT příkladů a vložte ho do Editoru dotazů aplikace SQL Server Management Studio. Uložte soubor jako
MyScript.sqlv adresáři, kde ho snadno najdete. Příklad, který funguje sAdventureWorksdatabází, je uveden v následujícím kódu.USE [AdventureWorks2022]; GO -- Might need to modify database name to match database SELECT DISTINCT pp.LastName, pp.FirstName FROM Person.Person AS pp INNER JOIN HumanResources.Employee AS e ON e.BusinessEntityID = pp.BusinessEntityID WHERE pp.BusinessEntityID IN ( SELECT SalesPersonID FROM Sales.SalesOrderHeader WHERE SalesOrderID IN ( SELECT SalesOrderID FROM Sales.SalesOrderDetail WHERE ProductID IN ( SELECT ProductID FROM Production.Product AS p WHERE ProductNumber = 'BK-M68B-42')));Spusťte Database Engine Tuning Advisor. V nabídce Nástroje v aplikaci SQL Server Management Studio (SSMS) vyberte Poradce pro ladění databáze. Další informace naleznete v tématu Spuštění poradce pro ladění databázového stroje. Připojte se k SQL Serveru v dialogovém okně Připojit k serveru .
Na kartě Obecné v grafickém uživatelském rozhraní na pravé straně Database Engine Tuning Advisor zadejte
MySessionv poli název relace.Vyberte Soubor pro úlohu a výběrem ikony binokulárních souborů vyhledejte soubor úlohy.
MyScript.sqlVyhledejte soubor, který jste uložili v kroku 1.Vyberte
AdventureWorks2025v seznamu Databáze pro analýzu úloh , vyberteAdventureWorks2025v části Vybrat databáze a tabulky, které chcete vyladit mřížku, a vyberte Uložit protokol ladění. Databáze pro analýzu úloh určuje první databázi, ke které se poradce pro ladění databázového stroje připojí při ladění úlohy. Po zahájení ladění se Poradce pro ladění databázového stroje připojí k databázím určeným příkazyUSE DATABASEobsaženými v úloze.
Vyberte kartu Možnosti ladění . Pro tento postup nenastavíte žádné možnosti ladění, ale chvíli si projděte výchozí možnosti ladění. Stisknutím klávesy F1 zobrazíte nápovědu pro tuto stránku s kartami. Pokud chcete zobrazit další možnosti ladění, vyberte Upřesnit možnosti . V dialogovém okně Upřesnit možnosti ladění vyberte nápovědu, kde najdete informace o možnostech ladění, které jsou tam zobrazeny. Výběrem možnosti Zrušit zavřete dialogové okno Upřesnit možnosti ladění a ponecháte vybrané výchozí možnosti.
Na panelu nástrojů vyberte tlačítko Spustit analýzu . Zatímco Poradce pro ladění databázového stroje analyzuje úlohu, můžete sledovat stav na kartě Průběh . Po dokončení ladění se zobrazí karta Doporučení .
Pokud se zobrazí chyba týkající se data a času zastavení ladění, zkontrolujte na hlavní kartě Možnosti ladění čas pro Zastavit. Ujistěte se, že datum a čas Zastavit jsou pozdější než aktuální datum a čas, a v případě potřeby je změňte.
Po dokončení analýzy uložte doporučení jako Transact-SQL skript výběrem možnosti Uložit doporučení v nabídce Akce . V dialogovém okně Uložit jako přejděte do adresáře, do kterého chcete uložit skript doporučení, a zadejte název
MyRecommendationssouboru .
Zobrazení doporučení pro ladění
Na kartě Doporučení použijte posuvník v dolní části stránky s kartami a zobrazte všechny sloupce Doporučení indexu . Každý řádek představuje databázový objekt (indexy nebo indexovaná zobrazení), který vám Poradce pro ladění databázového stroje doporučuje odstranit nebo vytvořit. Posuňte se k pravému sloupci a vyberte definici. Poradce pro ladění databázového stroje zobrazí okno náhledu skriptu SQL, ve kterém můžete zobrazit skript Transact-SQL, který na daném řádku vytvoří nebo odstraní databázový objekt. Výběrem možnosti Zavřít zavřete okno náhledu.
Pokud máte potíže s vyhledáním definice , která obsahuje odkaz, zrušte zaškrtnutí políčka Zobrazit existující objekty v dolní části stránky s kartami. Tato akce snižuje počet zobrazených řádků. Když zrušíte zaškrtnutí tohoto políčka, Poradce pro ladění databázového stroje zobrazí pouze objekty, pro které vygeneroval doporučení. Zaškrtnutím políčka Zobrazit existující objekty zobrazíte všechny databázové objekty, které v databázi aktuálně existují
AdventureWorks2025. Pomocí posuvníku na pravé straně stránky s kartami zobrazte všechny objekty.Klikněte pravým tlačítkem myši na mřížku v podokně Doporučení indexu . Tato kontextová nabídka umožňuje vybrat a zrušit výběr doporučení. Umožňuje také změnit písmo textu mřížky.
V nabídce Akce vyberte Uložit doporučení a uložte všechna doporučení do jednoho Transact-SQL skriptu. Pojmenujte skript
MySessionRecommendations.sql.MySessionRecommendations.sqlOtevřete skript v Editoru dotazů aplikace SQL Server Management Studio a zobrazte ho. Doporučení můžete použít uAdventureWorks2025ukázkové databáze spuštěním skriptu v Editoru dotazů, ale nedělejte to. Zavřete skript v Editoru dotazů, aniž byste ho spustili.Jako alternativu můžete doporučení použít také tak, že v nabídce Akce poradce pro ladění databázového stroje vyberete Možnost Použít doporučení, ale tato doporučení teď v tomto cvičení nepoužijete.
Pokud na kartě Doporučení existuje více než jedno doporučení, vymažte některé řádky, které uvádějí databázové objekty v mřížce Doporučení indexu .
V nabídce Akce vyberte Vyhodnotit doporučení. Poradce pro ladění databázového stroje vytvoří novou relaci ladění, kde můžete vyhodnotit podmnožinu původních doporučení z
MySession.Zadejte
EvaluateMySessionnový název relace a na panelu nástrojů vyberte tlačítko Spustit analýzu . Opakujte kroky 2 a 3 pro tuto novou relaci ladění a podívejte se na její doporučení.
Shrnutí
Možná budete muset vyhodnotit podmnožinu doporučení pro ladění, pokud zjistíte, že musíte změnit možnosti ladění po spuštění relace. Můžete například požádat Poradce pro ladění databázového stroje, aby při zadávání možností ladění relace zvažoval indexovaná zobrazení, ale po vygenerování doporučení se rozhodnete nepoužít indexovaná zobrazení.
Pomocí možnosti Vyhodnotit doporučení v nabídce Akce znovu vyhodnoťte relaci prostřednictvím Poradce pro ladění Databázového Stroje bez zohlednění indexovaných zobrazení. Pokud použijete možnost Vyhodnotit doporučení , dříve vygenerovaná doporučení se hypoteticky použijí na aktuální fyzický návrh tak, aby se dostaly k fyzickému návrhu pro druhou relaci ladění.
Další informace o výsledcích vyladění můžete zobrazit na kartě Sestavy, která je popsána v dalším úkolu této lekce.
Zobrazení sestav ladění
I když je užitečné zobrazit skripty, které implementují výsledky ladění, poskytuje Advisor pro ladění databázového stroje také mnoho užitečných sestav, které můžete zobrazit. Tyto sestavy poskytují informace o existujících strukturách fyzického návrhu v databázi, kterou ladíte, a o doporučených strukturách. Sestavy ladění zobrazíte kliknutím na kartu Reports.
Vyberte kartu Sestavy v Poradci pro ladění databáze.
V podokně Souhrn ladění můžete zobrazit informace o tomto sezení ladění. Pomocí posuvníku můžete zobrazit veškerý obsah podokna. Všimněte si očekávaného procentuálního zlepšení a prostoru používaného doporučením. Při nastavování možností ladění můžete omezit prostor používaný doporučením. Na kartě Možnosti ladění vyberte Upřesnit možnosti. Zkontrolujte možnost Definovat maximální velikost místa pro doporučení a zadejte v megabajtech maximální prostor, který může konfigurace doporučení použít. Pomocí tlačítka Zpět v prohlížeči nápovědy se vraťte k tomuto kurzu.
V podokně Ladění sestav vyberte Sestava nákladů výpisu v seznamu Vybrat sestavu. Pokud potřebujete více místa pro prohlížení sestavy, posuňte hranici podokna Sledování relací doleva. Každý příkaz Transact-SQL, který se provádí v tabulce ve vaší databázi, má přidružené náklady na výkon. Snižte tyto náklady na výkon vytvořením efektivních indexů u často přístupných sloupců v tabulce. Tato sestava ukazuje odhadované procento zlepšení mezi původními náklady na provedení příkazu v úloze a náklady, pokud je doporučení pro optimalizaci provedeno. Množství informací obsažených v sestavě vychází z délky a složitosti úlohy.
V oblasti mřížky klikněte pravým tlačítkem myši na podokno Sestava nákladů výkazu a vyberte Exportovat do souboru. Uložte sestavu jako
MyReport. K názvu souboru se automaticky připojí přípona .xml. Můžete otevřítMyReport.xmlv oblíbeném editoru XML nebo v aplikaci SQL Server Management Studio a zobrazit tak obsah sestavy.Vraťte se na kartu Sestavy v Advisoru pro ladění databázového stroje a znovu klikněte na sestavu výkazu nákladů . Projděte si další dostupné možnosti. Můžete změnit písmo sestavy, kterou si prohlížíte. Změna písma zde také změní na ostatních stránkách s kartami.
Vyberte další sestavy ze seznamu Vybrat sestavy, abyste se s nimi lépe seznámili.
Shrnutí
Prozkoumali jste kartu Sestavy v grafickém uživatelském rozhraní Poradce pro ladění databázového stroje během relace ladění. Stejným postupem lze prozkoumat sestavy, které byly vygenerovány pro ladicí relaci EvaluateMySession. Začněte dvojkliknutím na EvaluateMySession v podokně Sledování sezení.