Delen via


Serverconfiguratie: minimaal geheugen per query

Van toepassing op:SQL Server

In dit artikel wordt beschreven hoe u de optie voor serverconfiguratie min memory per query in SQL Server configureert met behulp van SQL Server Management Studio of Transact-SQL. Met min memory per query de optie wordt de minimale hoeveelheid geheugen (in kilobytes) opgegeven die moet worden toegewezen voor de uitvoering van een query. Dit wordt ook wel de minimale geheugentoewijzing genoemd. Als de query bijvoorbeeld min memory per query is ingesteld op 2048 kB, krijgt de query gegarandeerd ten minste zoveel geheugen. De standaardwaarde is 1024 kB. De minimumwaarde 512 kB en het maximum is 2.147.483.647 KB (2 GB).

Beperkingen

De hoeveelheid minimumgeheugen per query heeft voorrang op de index geheugen creƫren optie. Als u beide opties wijzigt en het geheugen voor het maken van indexen kleiner is dan minimaal geheugen per query, ontvangt u een waarschuwingsbericht, maar de waarde is ingesteld. Tijdens het uitvoeren van query's ontvangt u een andere vergelijkbare waarschuwing.

Aanbevelingen

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

De SQL Server-queryprocessor probeert de optimale hoeveelheid geheugen te bepalen die moet worden toegewezen aan een query. Met de minimale hoeveelheid geheugen per query kan de beheerder de minimale hoeveelheid geheugen opgeven die elke query ontvangt. Query's ontvangen over het algemeen meer geheugen dan dit, als ze hash- en sorteerbewerkingen hebben op een groot aantal gegevens. Het verhogen van de waarde van min geheugen per query kan de prestaties voor sommige kleine tot middelgrote query's verbeteren, maar dit kan leiden tot een grotere concurrentie voor geheugenbronnen. De minimale hoeveelheid geheugen per queryoptie omvat geheugen dat is toegewezen voor sorteerbewerkingen.

Stel de minimale hoeveelheid geheugen per queryserverconfiguratieoptie niet te hoog in, met name op zeer drukke systemen, omdat de query1 moet wachten totdat het minimaal aangevraagde geheugen kan worden beveiligd, of totdat de waarde die is opgegeven in de configuratieoptie querywachtserver wordt overschreden. Als er meer geheugen beschikbaar is dan de opgegeven minimumwaarde die is vereist om de query uit te voeren, mag de query gebruikmaken van het extra geheugen, als het geheugen effectief door de query kan worden gebruikt.

1 In dit scenario is het wachttype doorgaans RESOURCE_SEMAPHORE. Zie sys.dm_os_wait_stats voor meer informatie.

Permissions

Voer machtigingen sp_configure uit voor zonder parameters of met alleen de eerste parameter worden standaard aan alle gebruikers verleend. Om sp_configure met beide parameters uit te voeren om een configuratieoptie te wijzigen of 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 het geheugenknooppunt .

  3. Voer in het vak Minimumgeheugen per query de minimale hoeveelheid geheugen (in kilobytes) in die moet worden toegewezen voor de uitvoering van een query.

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 min memory per query optie in te stellen op 3500 KB.

    USE master;
    GO
    
    EXECUTE sp_configure 'show advanced options', 1;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'min memory per query', 3500;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'show advanced options', 0;
    GO
    
    RECONFIGURE;
    GO
    

Opvolgen: Nadat u de minimale geheugenoptie per query hebt geconfigureerd

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