Övervaka frågor och förbättra arbetsbelastningsprestanda med automatisk justering i Azure-portalen
gäller för:Azure SQL Database
Azure SQL Managed Instance
Azure SQL Database hanterar automatiskt datatjänster som ständigt övervakar dina frågor och identifierar den åtgärd som du kan utföra för att förbättra arbetsbelastningens prestanda. Du kan granska rekommendationerna och tillämpa dem manuellt, eller låta Azure SQL Database automatiskt tillämpa korrigerande åtgärder. Detta kallas automatiskt justeringsläge.
Automatisk justering kan aktiveras på server- eller databasnivå via:
- Azure-portalen
- REST API--anrop
- T-SQL-kommandon
Notera
För Azure SQL Managed Instance kan det stödda alternativet FORCE_LAST_GOOD_PLAN
endast konfigureras via T-SQL. De Azure Portal-baserade konfigurations- och automatiska indexjusteringsalternativen som beskrivs i den här artikeln gäller inte för Azure SQL Managed Instance.
Det går inte att konfigurera automatiska justeringsalternativ via Azure Resource Manager-mallen (ARM) just nu.
Aktivera automatisk justering på servern
På servernivå kan du välja att ärva automatisk justeringskonfiguration från "Azure Defaults" eller att inte ärva konfigurationen. Azure-standardvärden är FORCE_LAST_GOOD_PLAN
aktiverade, CREATE_INDEX
inaktiverade och DROP_INDEX
inaktiverade.
Azure-portalen
Om du vill aktivera automatisk justering på en server i Azure SQL Database går du till servern i Azure-portalen och väljer sedan Automatisk justering på menyn.
Välj de automatiska justeringsalternativ som du vill aktivera och välj Använd.
Alternativ för automatisk justering på en server tillämpas på alla databaser på den här servern. Som standard ärver alla databaser konfigurationen från sin överordnade server, men detta kan åsidosättas och anges för varje databas individuellt.
REST API
Mer information om hur du använder ett REST API för att aktivera automatisk justering på en serverfinns i Server automatisk justering av UPDATE- och GET HTTP-metoder.
Det går inte att konfigurera automatiska justeringsalternativ via Azure Resource Manager-mallen (ARM) just nu.
Aktivera automatisk justering på en enskild databas
Med Azure SQL Database kan du individuellt ange konfigurationen för automatisk justering för varje databas. På databasnivå kan du välja att ärva automatisk justeringskonfiguration från den överordnade servern, "Azure Defaults" eller att inte ärva konfigurationen. Dessa standardvärden är följande:
-
FORCE_LAST_GOOD_PLAN
är aktiverat -
CREATE_INDEX
är inaktiverat -
DROP_INDEX
är inaktiverat
Tips
Den allmänna rekommendationen är att hantera konfigurationen för automatisk justering på servernivå så att samma konfigurationsinställningar kan tillämpas på varje databas automatiskt. Konfigurera automatisk justering på en enskild databas endast om du behöver att databasen har andra inställningar än andra som ärver inställningar från samma server.
Azure-portalen
Om du vill aktivera automatisk justering på en enkel databasnavigerar du till databasen i Azure-portalen och väljer Automatisk justering.
Enskilda inställningar för automatisk justering kan konfigureras separat för varje databas. Du kan konfigurera ett enskilt alternativ för automatisk justering manuellt eller ange att ett alternativ ärver dess inställningar från servern.
När du har valt önskad konfiguration väljer du Använd.
REST API
Mer information om hur du använder ett REST-API för att möjliggöra automatisk optimering på en enskild databas finns i om användning av UPDATE och GET HTTP-metoder för automatisk optimering av Azure SQL Database.
Det går inte att konfigurera automatiska justeringsalternativ via Azure Resource Manager-mallen (ARM) just nu.
T-SQL
Om du vill aktivera automatisk justering på en enskild databas via T-SQL ansluter du till databasen och kör följande fråga:
ALTER DATABASE current SET AUTOMATIC_TUNING = AUTO | INHERIT | CUSTOM
Om du ställer in automatisk justering på AUTO
tillämpas Standardinställningar för Azure. Om du ställer in den på INHERIT
ärvs den automatiska justeringskonfigurationen från den överordnade servern. Om du väljer CUSTOM
måste du konfigurera automatisk justering manuellt.
Om du vill konfigurera enskilda automatiska justeringsalternativ via T-SQL ansluter du till databasen och kör följande fråga:
ALTER DATABASE CURRENT SET AUTOMATIC_TUNING (
FORCE_LAST_GOOD_PLAN = ON,
CREATE_INDEX = ON,
DROP_INDEX = OFF
);
Om du ställer in det enskilda justeringsalternativet på PÅ åsidosätts alla inställningar som databasen ärvt och aktiverar justeringsalternativet. Om du ställer in den på OFF
åsidosätts även alla inställningar som databasen ärvt och inaktiverar justeringsalternativet. Alternativ för automatisk justering som DEFAULT
anges för ärver konfigurationen för automatisk justering från inställningarna på servernivå.
Viktig
För aktiv geo-replikeringmåste automatisk justering endast konfigureras på den primära databasen. Automatiskt tillämpade justeringsåtgärder, till exempel att skapa eller ta bort ett index, replikeras automatiskt till geo-sekundärfiler. Försök att aktivera automatisk justering via T-SQL på den skrivskyddade sekundära resulterar i ett fel, eftersom en annan justeringskonfiguration på den skrivskyddade sekundära inte stöds.
Om du vill veta mer om T-SQL-alternativen för att konfigurera automatisk justering, se ALTER DATABASE SET Options.
Felsökning
Automatiserad rekommendationshantering är inaktiverad
Om du ser felmeddelanden om att automatiserad rekommendationshantering har inaktiverats eller inaktiverats av systemet är de vanligaste orsakerna:
- Query Store är inte aktiverat eller
- Query Store är i skrivskyddat läge för en angiven databas, eller
- Query Store slutade köras eftersom det tog slut på allokerat lagringsutrymme.
Följande steg kan övervägas för att åtgärda det här problemet:
Rensa Query Store eller ändra datakvarhållningsperioden till "auto" med hjälp av T-SQL eller öka maximal storlek för Query Store. Se hur du konfigurerar rekommenderad kvarhållnings- och avbildningsprincip för Query Store.
Använd SQL Server Management Studio (SSMS) och följ dessa steg:
- Anslut till Azure SQL-databasen.
- Högerklicka på databasen.
- Gå till Egenskaper och välj Query Store.
- Ändra driftsläget till läs- och skrivläge.
- Ändra Store Capture Mode till Auto.
- Ändra storleksbaserat rensningsläge till Auto.
Behörigheter
För hantering av automatisk justering i Azure SQL Database, i Azure-portalen eller vid användning av PowerShell eller REST API, krävs medlemskap i inbyggda rollbaserade åtkomstkontrollroller (RBAC) i Azure.
För att hantera automatisk justering är den lägsta nödvändiga behörigheten för att ge användaren medlemskap i SQL Database-deltagare rollen. Du kan också överväga att använda högre privilegierade roller som SQL Server-bidragsgivare, bidragsgivare och ägare.
Behörigheter som krävs för att hantera automatisk justering med T-SQL finns i Behörigheter för ALTER DATABASE
.
Konfigurera automatisk justering av e-postmeddelanden
Information om hur du tar emot automatiska e-postmeddelanden om rekommendationer från den automatiska justeringen finns i guiden för e-postaviseringar om automatisk justering.