Automatische afstemming inschakelen in de Azure-portal om query's te controleren en de werkbelastingprestaties te verbeteren

IS VAN TOEPASSING OP: Azure SQL Database Azure SQL beheerd exemplaar

Azure SQL Database beheert automatisch gegevensservices die uw query's voortdurend bewaken en identificeert de actie die u kunt uitvoeren om de prestaties van uw werkbelasting te verbeteren. U kunt aanbevelingen bekijken en deze handmatig toepassen of Azure SQL Database corrigerende acties automatisch toepassen. Dit wordt ook wel automatische afstemmingsmodus genoemd.

Automatische afstemming kan worden ingeschakeld op de server of op databaseniveau via:

Opmerking

Voor Azure SQL Beheerd exemplaar kan de ondersteunde optie FORCE_LAST_GOOD_PLAN alleen worden geconfigureerd via T-SQL. De configuratie- en automatische indexafstemmingsopties die in dit artikel worden beschreven, zijn niet van toepassing op Azure SQL beheerde exemplaar.

Opmerking

Het configureren van automatische afstemmingsopties via ARM (Azure Resource Manager) sjabloon wordt op dit moment niet ondersteund.

Automatische afstemming op server inschakelen

Op serverniveau kunt u ervoor kiezen om automatisch afstemmen over te nemen van 'Azure Defaults' of niet om de configuratie over te nemen. Azure defaults are FORCE_LAST_GOOD_PLAN is enabled, CREATE_INDEX is uitgeschakeld en DROP_INDEX is uitgeschakeld.

Belangrijk

Vanaf maart 2020 zijn de nieuwe Azure-standaardinstellingen voor automatische afstemming als volgt:

  • FORCE_LAST_GOOD_PLAN = ingeschakeld, CREATE_INDEX = uitgeschakeld en DROP_INDEX = uitgeschakeld.
  • Bestaande servers zonder automatische afstemmingsvoorkeuren die zijn geconfigureerd, worden automatisch geconfigureerd om de Azure-standaardinstellingen over te nemen. Dit geldt voor alle klanten die momenteel serverinstellingen hebben voor automatische afstemming in een niet-gedefinieerde staat.
  • Nieuwe servers die zijn gemaakt, worden automatisch geconfigureerd om de Azure-standaardwaarden over te nemen (in tegenstelling tot eerder wanneer de configuratie voor automatisch afstemmen in een niet-gedefinieerde toestand was bij het maken van nieuwe servers).

Azure-portal

Als u automatische afstemming wilt inschakelen op een server in Azure SQL Database, gaat u naar de server in de Azure-portal en selecteert u Vervolgens Automatisch afstemmen in het menu.

Screenshot shows Automatic tuning in the Azure portal, where you can apply options for a server.

Opmerking

Houd er rekening mee dat de DROP_INDEX op dit moment niet compatibel is met toepassingen met behulp van partition switching en index hints en in deze gevallen niet moet worden ingeschakeld. Het wegvallen van ongebruikte indexen wordt niet ondersteund voor Premium bedrijfskritische servicelagen.

Selecteer de automatische afstellingsopties die u wilt inschakelen en selecteer Toepassen.

Automatische afstemmingsopties op een server worden toegepast op alle databases op deze server. Standaard nemen alle databases de configuratie over van de bovenliggende server, maar dit kan worden overschreven en voor elke database afzonderlijk worden opgegeven.

REST-API

Zie Automatisch bijwerken van server en HTTP-methoden downloaden voor meer informatie over het gebruik van een REST-APIvoor het automatisch afstemmen op een server.

Automatische afstemming van een afzonderlijke database inschakelen

Azure SQL Database kunt u de configuratie voor automatisch afstemmen voor elke database afzonderlijk opgeven. Op databaseniveau kunt u ervoor kiezen om automatische afstemmingsconfiguratie over te nemen van de bovenliggende server, 'Azure Defaults' of niet om de configuratie over te nemen. Azure Defaults zijn ingesteld op FORCE_LAST_GOOD_PLAN is ingeschakeld, CREATE_INDEX is uitgeschakeld en DROP_INDEX is uitgeschakeld.

Tip

De algemene aanbeveling is om de automatische afstemmingsconfiguratie op serverniveau te beheren, zodat op elke database automatisch dezelfde configuratie-instellingen kunnen worden toegepast. Configureer alleen automatisch afstemmen op een afzonderlijke database als u deze database nodig hebt om andere instellingen te hebben dan andere instellingen die van dezelfde server overnemen.

Azure-portal

Als u automatisch afstemmen op één database wiltinschakelen, gaat u naar de database in de Azure-portal en selecteert u Automatisch afstemmen.

Afzonderlijke instellingen voor automatisch afstemmen kunnen afzonderlijk worden geconfigureerd voor elke database. U kunt handmatig een afzonderlijke optie voor automatisch afstemmen configureren of opgeven dat een optie de instellingen van de server over neemt.

Screenshot shows Automatic tuning in the Azure portal, where you can apply options for a single database.

Houd er rekening mee DROP_INDEX de optie op dit moment niet compatibel is met toepassingen met behulp van het schakelen tussen partities en indexhints en dat deze optie in deze gevallen niet moet worden ingeschakeld.

Nadat u de gewenste configuratie hebt geselecteerd, klikt u op Toepassen.

Rest-API

Zie voor meer informatie over het gebruik van een REST-API voor het automatisch afstemmen van één database Azure SQL Database automatische afstemmingsupdate en HTTP-methoden downloaden.

T-SQL

Als u automatisch afstemmen op één database via T-SQL wilt inschakelen, maakt u verbinding met de database en voert u de volgende query uit:

ALTER DATABASE current SET AUTOMATIC_TUNING = AUTO | INHERIT | CUSTOM

Als u automatisch afstemmen instelt op AUTO, worden Azure Defaults toegepast. Als u deze instelling instelt op OVERNEMEN, wordt de configuratie voor automatisch afstemmen overgenomen van de bovenliggende server. Als u AANGEPAST kiest, moet u automatisch afstemmen handmatig configureren.

Als u afzonderlijke opties voor automatisch afstemmen via T-SQL wilt configureren, maakt u verbinding met de database en voert u de query zoals deze uit:

ALTER DATABASE current SET AUTOMATIC_TUNING (FORCE_LAST_GOOD_PLAN = ON, CREATE_INDEX = ON, DROP_INDEX = OFF)

Als u de afzonderlijke afstemmingsoptie instelt op AAN, wordt elke instelling die door die database is overgenomen, overgenomen en wordt de optie afstemmen ingeschakeld. Als u deze instelling instelt op UIT, wordt elke instelling die door de database is overgenomen ook overgenomen en wordt de optie voor het afstemmen uitgeschakeld. De optie Voor automatisch afstemmen, waarvoor STANDAARD is opgegeven, wordt de automatische afstemmingsconfiguratie overgenomen van de instellingen op serverniveau.

Belangrijk

In het geval van actieve georeplicatiehoeft automatische afstemming alleen in de primaire database te worden geconfigureerd. Automatisch toegepaste afstemmingsacties, zoals het maken of verwijderen van indexen, worden automatisch gerepliceerd naar de secundaire alleen-lezen. Als u automatisch afstemmen via T-SQL in de secundaire functie alleen-lezen inschakelen, wordt een andere afstemmingsconfiguratie op de secundaire alleen-lezen niet ondersteund.

Zie ALTER DATABASE SET Options (Transact-SQL)voor meer abut T-SQL voor het configureren van automatische afstemming.

Problemen oplossen

Automatisch aanbevelingsbeheer is uitgeschakeld

In geval van foutberichten dat automatisch aanbevelingsbeheer is uitgeschakeld of gewoon is uitgeschakeld door het systeem, zijn de meest voorkomende oorzaken:

  • Queryopslag is niet ingeschakeld of
  • Query store is in de modus Alleen-lezen voor een opgegeven database, of
  • Queryopslag wordt niet meer uitgevoerd omdat de toegewezen opslagruimte is gebruikt.

De volgende stappen kunnen worden overwogen om dit probleem te verhelpen:

  • Ruim het Queryopslag op of wijzig de bewaarperiode voor gegevens in 'automatisch' met behulp van T-SQL. Bekijk hoe u aanbevolen bewaar- en vastleggenbeleid configureert voor queryopslag.
  • Gebruik SQL Server Management Studio (SSMS) en volg de volgende stappen:
    • Verbinding maken naar de Azure SQL Database
    • Klik met de rechtermuisknop op de database
    • Ga naar Eigenschappen en klik op Query store
    • De bewerkingsmodus wijzigen in Read-Write
    • De opslagopnamemodus wijzigen in Automatisch
    • De opschoningsmodus op basis van grootte wijzigen in Automatisch

Machtigingen

Aangezien automatisch afstemmen een Azure-functie is, moet u de ingebouwde rollen van Azure gebruiken om deze te kunnen gebruiken. Het SQL alleen verificatie is niet voldoende om de functie vanuit de Azure-portal te gebruiken.

Als u automatische afstemming wilt gebruiken, is de minimaal vereiste machtiging voor het verlenen van toestemming aan de gebruiker de ingebouwde rol van Azure SQL Database bijdrager. U kunt ook overwegen om hogere bevoegdheden te gebruiken, zoals SQL Server Inzender, SQL Beheerde inzender voor exemplaren, Inzender en Eigenaar.

Automatische e-mailmeldingen configureren

Zie de handleiding voor automatische afstemming van e-mailmeldingen als u automatische e-mailmeldingen wilt ontvangen over aanbevelingen die worden gedaan door de automatische afstemming.

Volgende stappen