Eu tenho uma instância do SQL Server 2014 Standard (x64) que foi atualizada recentemente do SQL Express.
A VM em que a instância do SQL está tem ~ 16 GB de RAM e o SQL MAX MEMORY foi configurado para usar ~ 12 GB
Eu quero entender enquanto eu configurei: max server memory (MB) = 12000
, por que a instância do SQL não está consumindo mais de ~ 4154 MB quando eu a verifiquei com a seguinte consulta:
select (physical_memory_in_use_kb/1024) usage_in_MB
from sys.dm_os_process_memory
max server memory
é o máximo que você permitirá que o SQL use. Isso é definido principalmente para deixar memória para outro processo, como o sistema operacional, ou se você tiver várias instâncias em uma máquina.O SQL usa apenas a memória necessária, portanto, não é incomum ver o uso de memória muito menor, quando o SQL não precisa.
Mesmo quando você acha que o SQL deveria usar mais CPU, às vezes ele opta por não usar. Eu tenho alguns trabalhos de reorganização de índice que quero trabalhar mais, mas eles nunca usarão mais de 10 ou 20% da CPU. Veja por si mesmo, faça vários índices "feios" e depois use a ferramenta de sua escolha para
fix
eles.Definir Max em 12 GB quando você tem 16 GB é uma escolha bem equilibrada na maioria das configurações de instância única.
execute isso para verificar a configuração:
se você ainda estiver preocupado, ele não acessará a memória até o mínimo de 8 GB e veja se os valores mudaram de acordo:
defina-o de volta para o valor observado na primeira chamada para restaurá-lo normal.