Configurare l'opzione min memory per query (opzione di configurazione del server)

Si applica a:SQL Server

Questo argomento descrive come configurare l'opzione di configurazione del server min memory per query in SQL Server usando SQL Server Management Studio o Transact-SQL. Con l'opzione min memory per query è possibile specificare la quantità minima di memoria, in kilobyte, che verrà allocata per l'esecuzione di una query. Questa operazione è nota anche come concessione di memoria minima. Se, ad esempio, l'opzione min memory per query è impostata su 2.048 KB, per la query sarà disponibile almeno questa quantità di memoria totale. Il valore predefinito è 1024 KB. Il valore minimo è 512 KB mentre quello massimo è 2.147.483.647 KB (2 GB).

Contenuto dell'articolo

Prima di iniziare

Limitazioni e restrizioni

  • La quantità indicata in min memory per query ha la precedenza sull'opzione index create memory. Se si modificano entrambe le opzioni e index create memory è minore di min memory per query, verrà visualizzato un messaggio di avviso, ma il valore risulterà impostato. Durante l'esecuzione delle query verrà visualizzato un altro avviso simile.

Consigli

  • Questa opzione è avanzata e la relativa modifica è riservata ad amministratori di database esperti o a professionisti con certificazione per SQL Server.

  • Con Query Processor di SQL Server si tenta di determinare la quantità ottimale di memoria da allocare per una query. L'opzione min memory per query consente all'amministratore di specificare la quantità di memoria minima assegnata a ogni query. In genere la quantità di memoria aumenta se le query comportano operazioni di hashing o di ordinamento per quantità di dati elevate. L'aumento del valore dell'opzione min memory per query può migliorare le prestazioni per alcune query di dimensioni ridotte o medie, ma può provocare una maggiore contesa per le risorse di memoria. L'opzione min memory per query include la memoria allocata per le operazioni di ordinamento.

  • Evitare di impostare su valori troppo alti l'opzione di configurazione del server min memory per query, in particolare nei sistemi con utilizzo intensivo: la query rimarrà in attesa1 finché non sarà in possesso della quantità di memoria minima necessaria oppure finché non verrà superato il valore dell'opzione di configurazione del server query wait. Se è disponibile una quantità di memoria superiore al valore minimo necessario per l'esecuzione della query, la query potrà avvalersi della memoria aggiuntiva, a condizione che questa possa essere utilizzata in modo efficace.

1 In questo scenario il tipo di attesa è in genere RESOURCE_SEMAPHORE. Per altre informazioni, vedere sys.dm_os_wait_stats (Transact-SQL).

Sicurezza

Autorizzazioni

Le autorizzazioni di esecuzione per sp_configure senza alcun parametro o solo con il primo parametro vengono assegnate per impostazione predefinita a tutti gli utenti. Per eseguire sp_configure con entrambi i parametri per la modifica di un'opzione di configurazione o per l'esecuzione dell'istruzione RECONFIGURE, a un utente deve essere concessa l'autorizzazione a livello di server ALTER SETTINGS. L'autorizzazione ALTER SETTINGS è assegnata implicitamente ai ruoli predefiniti del server sysadmin e serveradmin .

Utilizzo di SQL Server Management Studio

Per configurare l'opzione min memory per query

  1. In Esplora oggetti fare clic con il pulsante destro del mouse su un server e scegliere Proprietà.

  2. Fare clic sul nodo Memoria .

  3. Nella casella Memoria minima per le query immettere la quantità minima di memoria, in kilobyte, che verrà allocata per l'esecuzione di una query.

Utilizzo di Transact-SQL

Per configurare l'opzione min memory per query

  1. Connettersi al motore di database di .

  2. Dalla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. In questo esempio si illustra come usare sp_configure per impostare il valore dell'opzione min memory per query su 3500 KB.

USE AdventureWorks2022;  
GO  
EXEC sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE ;  
GO  
EXEC sp_configure 'min memory per query', 3500 ;  
GO  
RECONFIGURE;  
GO    

Completamento: Dopo la configurazione dell'opzione min memory per query

L'impostazione diventa effettiva immediatamente senza dover riavviare il server.

Vedi anche

RECONFIGURE (Transact-SQL)
Opzioni di configurazione del server (SQL Server)
sp_configure (Transact-SQL)
Impostare l'opzione di configurazione del server index create memory
sys.dm_os_wait_stats (Transact- SQL)
sys.dm_exec_query_memory_grants (Transact-SQL)