Share via


Effetti delle opzioni min server memory e max server memory

Le opzioni di configurazione min server memory e max server memory consentono di stabilire i limiti inferiore e superiore relativi alla quantità di memoria utilizzata dal pool di buffer di Microsoft Motore di database di SQL Server. Quando viene avviato, il pool di buffer non acquisisce immediatamente la quantità di memoria specificata per min server memory, ma solo la memoria necessaria per l'inizializzazione. Con l'aumentare del carico di lavoro da gestire, Motore di database continua ad acquisire la memoria necessaria per supportare il carico di lavoro e comincia a liberare la memoria acquisita solo quando la quantità di memoria acquisita corrisponde al valore specificato per min server memory. Quando viene raggiunto il limite impostato in min server memory, il pool di buffer utilizza quindi l'algoritmo standard per acquisire e liberare memoria nella misura necessaria. L'unica differenza è rappresentata dal fatto che il pool di buffer non consente mai che la quantità di memoria allocata scenda al di sotto del limite specificato per min server memory, né acquisisce mai una quantità di memoria maggiore del limite specificato per max server memory.

Nota

Come processo, SQL Server acquisisce una quantità di memoria maggiore rispetto a quella specificata dall'opzione max server memory. I componenti interni ed esterni possono allocare memoria al di fuori del pool di buffer, richiedendo ulteriore memoria, ma la memoria allocata al pool di buffer in genere rappresenta la parte di memoria maggiore utilizzata da SQL Server.

La quantità di memoria acquisita da Motore di database dipende interamente dal carico di lavoro assegnato all'istanza. È possibile che per un'istanza di SQL Server che elabora un numero ridotto di richieste, la quantità di memoria allocata rimanga sempre inferiore al valore di min server memory.

Se si specifica lo stesso valore per min server memory e max server memory, quando la memoria allocata al Motore di database raggiunge tale valore, Motore di database smette di liberare e acquisire dinamicamente memoria per il pool di buffer.

Se un'istanza di SQL Server è in esecuzione in un computer in cui viene spesso avviata o interrotta l'esecuzione di altre applicazioni, è possibile che l'allocazione e la deallocazione della memoria da parte dell'istanza di SQL Server rallenti l'avvio delle altre applicazioni. Se SQL Server è solo una delle numerose applicazioni server in esecuzione in un singolo computer, può inoltre essere necessario che l'amministratore di sistema controlli la quantità di memoria allocata a SQL Server. In questi casi, è possibile utilizzare le opzioni min server memory e max server memory per controllare la quantità di memoria che può essere utilizzata da SQL Server. Per ulteriori informazioni, vedere Opzioni per la memoria server.

Le opzioni min server memory e max server memory vengono specificate in megabyte.