Delen via


Serverconfiguratie: kostenlimiet query governor

Van toepassing op:SQL Server

In dit artikel wordt beschreven hoe u de optie voor serverconfiguratie query governor cost limit in SQL Server configureert met behulp van SQL Server Management Studio of Transact-SQL. Met de optie kostenlimiet geeft u een bovengrens op voor de geschatte kosten die zijn toegestaan voor een bepaalde query die kan worden uitgevoerd. Querykosten zijn een abstracte afbeelding die wordt bepaald door de queryoptimalisatie op basis van geschatte uitvoeringsvereisten, zoals CPU-tijd, geheugen en schijf-I/O. Het verwijst naar de geschatte verstreken tijd, in seconden, die nodig zou zijn om een query op een specifieke hardwareconfiguratie te voltooien. Deze abstracte afbeelding is niet gelijk aan de tijd die nodig is om een query op het actieve exemplaar te voltooien. Deze moet worden behandeld als een relatieve meting. De standaardwaarde voor deze optie is 0, waarmee de query governor wordt uitgeschakeld. Als u de waarde instelt zodat 0 alle query's zonder enige tijdsbeperking kunnen worden uitgevoerd. Als u een niet-nulwaarde, niet-nulwaarde opgeeft, staat de query-gouverneur de uitvoering van een query met een geschatte kosten die deze waarde overschrijdt, niet toe.

Aanbevelingen

Deze optie is een geavanceerde optie en moet alleen worden gewijzigd door een ervaren databaseprofessional.

Als u de kostenlimiet van de waardequery wilt wijzigen per verbinding, gebruikt u de set-QUERY_GOVERNOR_COST_LIMIT-instructie .

Permissions

Voer machtigingen sp_configure uit voor zonder parameters of met alleen de eerste parameter worden standaard aan alle gebruikers verleend. Als u beide parameters wilt uitvoeren sp_configure om een configuratieoptie te wijzigen of om de RECONFIGURE instructie uit te voeren, moet aan een gebruiker de ALTER SETTINGS machtiging op serverniveau worden verleend. De ALTER SETTINGS machtiging wordt impliciet bewaard door de vaste serverfuncties sysadmin en serveradmin .

SQL Server Management Studio gebruiken

  1. Klik in Objectverkenner met de rechtermuisknop op een server en selecteer Eigenschappen.

  2. Selecteer de pagina Verbindingen .

  3. Schakel het selectievakje Query governor gebruiken in of uit om langlopende query's te voorkomen .

    Als u dit selectievakje inschakelt, voert u in het onderstaande vak een positieve waarde in die de query governor gebruikt om de uitvoering van een query met een geschatte kostenoverschrijding van die waarde niet toe te laten.

Gebruik Transact-SQL

  1. Maak verbinding met de database-engine.

  2. Selecteer Nieuwe query in de standaardbalk.

  3. Kopieer en plak het volgende voorbeeld in het queryvenster en selecteer uitvoeren. In dit voorbeeld ziet u hoe u sp_configure gebruikt om de waarde van de query governor cost limit optie in te stellen op een geschatte querykosten bovengrens van 120.

    USE master;
    GO
    
    EXECUTE sp_configure 'show advanced options', 1;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'query governor cost limit', 120;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'show advanced options', 0;
    GO
    
    RECONFIGURE;
    GO
    

Zie Server-configuratieoptiesvoor meer informatie.

Opvolgen: Nadat u de optie kostenlimiet voor query governor hebt geconfigureerd

De instelling wordt onmiddellijk van kracht zonder de server opnieuw op te starten.