Delen via


Query's bewaken en de prestaties van workloads verbeteren met automatisch afstemmen in Azure Portal

van toepassing op:Azure SQL DatabaseAzure SQL Managed Instance-

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 workload te verbeteren. U kunt aanbevelingen bekijken en handmatig toepassen, of azure SQL Database automatisch corrigerende acties laten toepassen. Deze modus staat bekend als automatische afstemmingsmodus.

Automatisch afstemmen kan worden ingeschakeld op server- of databaseniveau via:

Notitie

Voor Azure SQL Managed Instance kan de ondersteunde optie FORCE_LAST_GOOD_PLAN alleen worden geconfigureerd via T-SQL-. De configuratie en opties voor automatisch afstemmen van indexen die in dit artikel worden beschreven, zijn niet van toepassing op Azure SQL Managed Instance.

Het configureren van opties voor automatisch afstemmen via de ARM-sjabloon (Azure Resource Manager) wordt momenteel niet ondersteund.

Automatisch afstemmen op server inschakelen

Op serverniveau kunt u ervoor kiezen om de configuratie voor automatisch afstemmen over te nemen van 'Azure-standaardinstellingen' of om de configuratie niet over te nemen. Azure-standaardinstellingen zijn FORCE_LAST_GOOD_PLAN ingeschakeld, CREATE_INDEX uitgeschakeld en DROP_INDEX uitgeschakeld.

Azure Portal

Als u automatisch afstemmen wilt inschakelen op een server in Azure SQL Database, gaat u naar de server in Azure Portal en selecteert u vervolgens Automatisch afstemmen in het menu.

Schermopname toont Automatisch afstemmen in Azure Portal, waar u opties voor een server kunt toepassen.

Selecteer de opties voor automatisch afstemmen die u wilt inschakelen en selecteer Toepassen.

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

REST API

Zie voor meer informatie over het gebruik van een REST API om automatische optimalisatie op een server in te schakelen, de Server automatische afstemming en GET HTTP-methoden.

Het configureren van opties voor automatisch afstemmen via de ARM-sjabloon (Azure Resource Manager) wordt momenteel niet ondersteund.

Automatisch afstemmen inschakelen voor een afzonderlijke database

Met Azure SQL Database kunt u de configuratie voor automatisch afstemmen voor elke database afzonderlijk opgeven. Op databaseniveau kunt u ervoor kiezen om de configuratie voor automatisch afstemmen over te nemen van de bovenliggende server, 'Azure-standaardinstellingen' of om de configuratie niet over te nemen. Deze standaardwaarden zijn als volgt:

  • FORCE_LAST_GOOD_PLAN is ingeschakeld
  • CREATE_INDEX is uitgeschakeld
  • DROP_INDEX is uitgeschakeld

Tip

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

Azure Portal

Als u automatisch afstemmen wilt inschakelen voor een individuele database, gaat u naar de database in Azure Portal en selecteert u Automatische afstemming.

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 overneemt.

Schermopname toont automatisch afstemmen in Azure Portal, waar u opties voor één database kunt toepassen.

Zodra u de gewenste configuratie hebt geselecteerd, selecteert u Toepassen.

REST API

Zie Automatische afstemming van Azure SQL Database en GET HTTP-methodenvoor meer informatie over het gebruik van een REST API om automatische afstemming op één database mogelijk te maken.

Het configureren van opties voor automatisch afstemmen via de ARM-sjabloon (Azure Resource Manager) wordt momenteel niet ondersteund.

T-SQL

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

ALTER DATABASE current SET AUTOMATIC_TUNING = AUTO | INHERIT | CUSTOM

Door automatische afstemming in te stellen op AUTO worden standaardinstellingen van Azure toegepast. Als u deze instelt op INHERIT, wordt de configuratie voor automatisch afstemmen overgenomen van de bovenliggende server. Als u CUSTOMkiest, moet u het 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 volgende query 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 ON, wordt elke instelling die door de database is overgenomen, overschreven en wordt de optie voor afstemmen ingeschakeld. Door deze in te stellen op OFF worden ook alle instellingen overschreven die de database heeft overgenomen, en wordt de afstemmingsoptie uitgeschakeld. Opties voor automatisch afstemmen waarvoor DEFAULT is opgegeven, nemen de configuratie voor automatisch afstemmen over van de instellingen op serverniveau.

Belangrijk

Voor actieve geo-replicatiemoet automatisch afstemmen alleen worden geconfigureerd op de primaire database. Automatisch toegepaste afstemmingsacties, zoals het maken of verwijderen van een index, worden automatisch gerepliceerd naar geo-secundaire bestanden. Als u automatische afstemming via T-SQL wilt inschakelen op de alleen-lezen secundaire server, leidt dit tot een foutmelding, omdat een andere afstemmingsconfiguratie op de secundaire server die alleen-lezen is niet wordt ondersteund.

Zie ALTER DATABASE SET Optionsvoor meer informatie over T-SQL-opties voor het automatisch afstemmen.

Probleemoplossing

Geautomatiseerd aanbevelingsbeheer is uitgeschakeld

Als u foutberichten ziet dat geautomatiseerd aanbevelingsbeheer is uitgeschakeld of uitgeschakeld door het systeem, zijn de meest voorkomende oorzaken:

  • Query Store is niet ingeschakeld of
  • Query Store bevindt zich in de modus Alleen-lezen voor een opgegeven database of
  • Query Store is gestopt met uitvoeren omdat er onvoldoende toegewezen opslagruimte beschikbaar is.

De volgende stappen kunnen worden overwogen om dit probleem op te lossen:

  • Schoon de Query Store op of wijzig de gegevensretentieperiode in 'automatisch' met behulp van T-SQL of verhoog de maximale grootte van Query Store. Zie hoe u aanbevolen bewaar- en opnamebeleid voor Query Store-configureert.

  • Gebruik SQL Server Management Studio (SSMS) en volg deze stappen:

    1. Maak verbinding met de Azure SQL-database.
    2. Klik met de rechtermuisknop op de database.
    3. Ga naar Eigenschappen en selecteer Query Store.
    4. Wijzig de bewerkingsmodus in lezen/schrijven .
    5. Wijzig de Store Capture-modus in Automatisch.
    6. Wijzig de op grootte gebaseerde opschoningsmodus in Automatische.

Machtigingen

Voor Azure SQL Database vereist het beheren van automatisch afstemmen in de Azure portal, of het gebruik van PowerShell of de REST API, dat je lid bent van de ingebouwde op rollen gebaseerde toegangsbeheerdersrollen (RBAC) van Azure.

Om automatisch afstemmen te beheren, is het minimaal vereiste machtigingsniveau het lidmaatschap van de rol SQL Database-bijdrager. U kunt ook overwegen om functies met hogere bevoegdheden te gebruiken, zoals Inzender voor SQL Server, Inzender en Eigenaar.

Zie Machtigingen voor ALTER DATABASEvoor machtigingen die zijn vereist voor het beheren van automatische afstemming met T-SQL.

E-mailmeldingen voor automatisch afstemmen configureren

Als u automatische e-mailnotificaties wilt ontvangen over aanbevelingen die zijn gedaan door de automatische afstemming, raadpleegt u de handleiding voor automatische afstemming e-mailnotificaties.