Partilhar via


Configuração do servidor: memória mínima por consulta

Aplica-se a:SQL Server

Este artigo descreve como configurar a opção de configuração do servidor no SQL Server usando o min memory per query SQL Server Management Studio ou o Transact-SQL. A min memory per query opção especifica a quantidade mínima de memória (em kilobytes) a alocar para a execução de uma consulta. Isso também é conhecido como concessão mínima de memória. Por exemplo, se min memory per query estiver definido como 2.048 KB, a consulta terá a garantia de obter pelo menos essa quantidade de memória total. O valor padrão é 1.024 KB. O valor mínimo 512 KB, e o máximo é 2,147,483,647 KB (2 GB).

Limitações

A quantidade de min de memória por consulta tem precedência sobre a opção de criação de memória de índice . Se você modificar ambas as opções e a memória de criação de índice for menor que a memória mínima por consulta, você receberá uma mensagem de aviso, mas o valor será definido. Durante a execução da consulta, você recebe outro aviso semelhante.

Recommendations

Esta opção é uma opção avançada e deve ser alterada apenas por um profissional de banco de dados experiente.

O processador de consultas do SQL Server tenta determinar a quantidade ideal de memória para alocar a uma consulta. A opção min memory per query permite que o administrador especifique a quantidade mínima de memória que uma única consulta recebe. As consultas geralmente recebem mais memória do que isso, se tiverem operações de hash e classificação em um grande volume de dados. Aumentar o valor da memória mínima por consulta pode melhorar o desempenho de algumas consultas de pequeno a médio porte, mas isso pode levar a uma maior competição por recursos de memória. A opção min memory per query inclui memória alocada para operações de classificação.

Não defina a opção de configuração min memory per query server muito alta, especialmente em sistemas muito ocupados, porque a consulta precisa aguardar1 até que possa proteger a memória mínima solicitada ou até que o valor especificado na opção de configuração do servidor de espera de consulta seja excedido. Se houver mais memória disponível do que o valor mínimo especificado necessário para executar a consulta, a consulta poderá usar a memória extra, se a memória puder ser usada efetivamente pela consulta.

1 Nesse cenário, o tipo de espera é normalmente RESOURCE_SEMAPHORE. Para obter mais informações, consulte sys.dm_os_wait_stats.

Permissions

As permissões de execução em sp_configure sem parâmetros ou apenas com o primeiro parâmetro são concedidas a todos os usuários por padrão. Para executar sp_configure com ambos os parâmetros para alterar uma opção de configuração ou executar a RECONFIGURE instrução, um usuário deve receber a permissão no nível do ALTER SETTINGS servidor. A ALTER SETTINGS permissão é mantida implicitamente pelas funções de servidor fixas sysadmin e serveradmin .

Usar o SQL Server Management Studio

  1. No Pesquisador de Objetos, clique com o botão direito do mouse em um servidor e selecione Propriedades.

  2. Selecione o nó Memória .

  3. Na caixa Memória mínima por consulta , insira a quantidade mínima de memória (em kilobytes) a ser alocada para a execução de uma consulta.

Utilize Transact-SQL

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, selecione Nova consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Este exemplo mostra como usar sp_configure para definir o min memory per query valor da opção como 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
    

Acompanhamento: Depois de configurar a opção min memory per query

A configuração entra em vigor imediatamente sem reiniciar o servidor.