Monitorování dotazů a zlepšení výkonu úloh pomocí automatického ladění na webu Azure Portal
Platí pro: Azure SQL Database
Azure SQL Managed Instance
Azure SQL Database automaticky spravuje datové služby, které neustále monitorují vaše dotazy, a identifikuje akci, kterou můžete provést za účelem zlepšení výkonu vaší úlohy. Můžete zkontrolovat doporučení a ručně je použít nebo nechat službu Azure SQL Database automaticky použít opravné akce. To se označuje jako režim automatického ladění.
Automatické ladění můžete povolit na úrovni serveru nebo databáze:
Poznámka:
U služby Azure SQL Managed Instance je možné podporovanou možnost FORCE_LAST_GOOD_PLAN
nakonfigurovat pouze prostřednictvím T-SQL. Možnosti konfigurace založené na webu Azure Portal a možnosti automatického ladění indexu popsané v tomto článku se nevztahují na spravovanou instanci Azure SQL.
Konfigurace možností automatického ladění prostřednictvím šablony Azure Resource Manageru (ARM) se v tuto chvíli nepodporuje.
Povolení automatického ladění na serveru
Na úrovni serveru můžete zdědit konfiguraci automatického ladění z výchozích hodnot Azure nebo nezdědit konfiguraci. Výchozí nastavení Azure jsou FORCE_LAST_GOOD_PLAN
povolená, CREATE_INDEX
zakázaná a DROP_INDEX
zakázaná.
portál Azure
Pokud chcete povolit automatické ladění na serveru ve službě Azure SQL Database, přejděte na server na webu Azure Portal a v nabídce vyberte Automatické ladění.
Vyberte možnosti automatického ladění, které chcete povolit, a vyberte Použít.
Možnosti automatického ladění na serveru se použijí pro všechny databáze na tomto serveru. Ve výchozím nastavení všechny databáze dědí konfiguraci z nadřazeného serveru, ale je možné ji přepsat a zadat pro každou databázi jednotlivě.
REST API
Další informace o použití rozhraní REST API k povolení automatického ladění na serveru najdete v tématu Automatické ladění serveru a metody GET HTTP.
Konfigurace možností automatického ladění prostřednictvím šablony Azure Resource Manageru (ARM) se v tuto chvíli nepodporuje.
Povolení automatického ladění pro jednotlivé databáze
Azure SQL Database umožňuje jednotlivě zadat konfiguraci automatického ladění pro každou databázi. Na úrovni databáze můžete zvolit, jestli chcete zdědit konfiguraci automatického ladění z nadřazeného serveru, výchozí hodnoty Azure nebo nezdědit konfiguraci. Tyto výchozí hodnoty jsou následující:
-
FORCE_LAST_GOOD_PLAN
je povolená -
CREATE_INDEX
je deaktivován -
DROP_INDEX
je deaktivován
Tip
Obecně se doporučuje spravovat konfiguraci automatického ladění na úrovni serveru, aby se stejná nastavení konfigurace použila u každé databáze automaticky. Automatické ladění pro jednotlivé databáze nakonfigurujte jenom v případě, že potřebujete, aby tato databáze měla jiná nastavení než ostatní dědící nastavení ze stejného serveru.
portál Azure
Pokud chcete povolit automatické ladění v jedné databázi, přejděte na databázi na webu Azure Portal a vyberte Automatické ladění.
Individuální nastavení automatického ladění lze pro každou databázi nakonfigurovat samostatně. Můžete ručně nakonfigurovat jednotlivou možnost automatického ladění nebo určit, že tato možnost dědí nastavení ze serveru.
Jakmile vyberete požadovanou konfiguraci, vyberte Použít.
REST API
Další informace o použití rozhraní REST API k povolení automatického ladění v jednoúčelové databázi najdete v tématu Automatické ladění aktualizací a metod GET HTTP ve službě Azure SQL Database.
Konfigurace možností automatického ladění prostřednictvím šablony Azure Resource Manageru (ARM) se v tuto chvíli nepodporuje.
T-SQL
Pokud chcete povolit automatické ladění jednoúčelové databáze prostřednictvím T-SQL, připojte se k databázi a spusťte následující dotaz:
ALTER DATABASE current SET AUTOMATIC_TUNING = AUTO | INHERIT | CUSTOM
Nastavení automatického ladění na AUTO
použije výchozí hodnoty Azure. Nastavením na INHERIT
se automaticky dědí konfigurace ladění z rodičovského serveru. Pokud zvolíte CUSTOM
, musíte ručně nakonfigurovat automatické ladění.
Pokud chcete nakonfigurovat jednotlivé možnosti automatického ladění prostřednictvím T-SQL, připojte se k databázi a spusťte následující dotaz:
ALTER DATABASE CURRENT SET AUTOMATIC_TUNING (
FORCE_LAST_GOOD_PLAN = ON,
CREATE_INDEX = ON,
DROP_INDEX = OFF
);
Nastavení individuální možnosti ladění na ZAPNUTO přepíše všechna nastavení, která databáze zdědila, a povolí možnost ladění. Nastavení na OFF
také přepíše všechna nastavení, která databáze zdědila, a zakáže možnost ladění. Možnosti automatického ladění, pro které DEFAULT
je určena, dědí konfiguraci automatického ladění z nastavení na úrovni serveru.
Důležité
Pro aktivnígeografické replikace musí být automatické ladění nakonfigurováno pouze v primární databázi. Automaticky použité akce ladění, jako je vytvoření nebo odstranění indexu, se automaticky replikují do geografických sekundárních souborů. Při pokusu o povolení automatického ladění přes T-SQL v sekundárním režimu jen pro čtení dochází k selhání, protože konfigurace jiného ladění na sekundárním čtení není podporovaná.
Chcete-li zjistit více o možnostech T-SQL pro konfiguraci automatického ladění, viz MOŽNOSTI ALTER DATABASE SET.
Řešení problému
Automatizovaná správa doporučení je zakázaná.
Pokud se zobrazí chybové zprávy, které oznámují, že automatická správa doporučení byla zakázána nebo zakázána systémem, nejběžnější příčiny jsou:
- Úložiště dotazů není povolené nebo
- Úložiště dotazů je v režimu jen pro čtení pro zadanou databázi nebo
- Úložiště dotazů se zastavilo, protože došlo k výpadku přiděleného prostoru úložiště.
Pokud chcete tento problém opravit, je možné zvážit následující kroky:
Vyčistěte úložiště dotazů nebo upravte dobu uchovávání dat na "auto" pomocí T-SQL nebo zvyšte maximální velikost úložiště dotazů. Podívejte se, jak nakonfigurovat doporučené zásady uchovávání informací a zachycení pro úložiště dotazů.
Použijte SQL Server Management Studio (SSMS) a postupujte takto:
- Připojte se k databázi Azure SQL.
- Klikněte pravým tlačítkem myši na databázi.
- Přejděte na Vlastnosti a vyberte úložiště dotazů.
- Změňte provozní režim na režim Čtení-zápis.
- Změňte režim zachycení store na automatické.
- Změňte režim čištění založený na velikosti na automatický .
Oprávnění
Pro Službu Azure SQL Database, správu automatického ladění na webu Azure Portal nebo použití PowerShellu nebo rozhraní REST API vyžaduje členství v předdefinovaných rolích řízení přístupu na základě role (RBAC).
Pokud chcete spravovat automatické ladění, minimální požadovaná oprávnění k udělení uživateli je členství v roli přispěvatele služby SQL Database. Můžete také zvážit použití rolí s vyššími oprávněními, jako je přispěvatel SQL Serveru, přispěvatel a vlastník.
Oprávnění požadovaná ke správě automatického ladění pomocí T-SQL najdete v tématu Oprávnění pro ALTER DATABASE
.
Konfigurace automatických ladění e-mailových oznámení
Pokud chcete dostávat automatizovaná e-mailová oznámení o doporučeních provedených automatickým laděním, přečtěte si průvodce automatickým laděním e-mailových oznámení .