Configure the locks (opção de configuração do servidor)

Aplica-se a:SQL Server

Esse tópico descreve como configurar a opção de configuração de servidor bloqueios no SQL Server usando o SQL Server Management Studio ou o Transact-SQL. A opção bloqueios define o número máximo de bloqueios disponíveis, limitando portanto a quantidade de memória que o Mecanismo de Banco de Dados do SQL Server usa para eles. A configuração padrão é 0, a qual permite que o Mecanismo de Banco de Dados aloque e desaloque as estruturas de bloqueio de forma dinâmica, baseado nas alterações de requisitos de sistema.

Importante

Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

Neste tópico

Antes de começar

Recomendações

  • Esta é uma opção avançada e deve ser alterada somente por um administrador de banco de dados experiente ou por um profissional certificado do SQL Server.

  • Quando o servidor é iniciado com bloqueios definido como 0, o gerenciador de bloqueio adquire memória suficiente do Mecanismo de Banco de Dados para um pool inicial de 2.500 estruturas de bloqueio. Conforme o pool de bloqueio é esgotado, memória adicional é adquirida para o pool.

    Geralmente, se for necessária mais memória para o pool de bloqueio do que a que está disponível no pool de memória do Mecanismo de Banco de Dados, e se mais memória do computador estiver disponível (o limite de memória máxima do servidor não foi atingido), o Mecanismo de Banco de Dados alocará memória dinamicamente para satisfazer a solicitação de bloqueios. No entanto, se a alocação dessa memória provocar paginação no nível do sistema operacional (por exemplo, se outro aplicativo estiver executando no mesmo computador como uma instância do SQL Server e usando essa memória), mais espaço de bloqueio não será alocado. O pool de bloqueios dinâmico não adquire mais que 60% da memória alocada para o Mecanismo de Banco de Dados. Depois que o pool de bloqueios atingiu 60% da memória adquirida por uma instância do Mecanismo de Banco de Dados ou quando não houver mais memória disponível no computador as solicitações de bloqueios adicionais gerarão um erro.

    Recomenda-se permitir que o SQL Server use bloqueios dinamicamente. No entanto, você pode definir bloqueios e substituir a capacidade do SQL Server de alocar recursos de bloqueio dinamicamente. Quando a opção bloqueios está definida com um valor diferente de 0, o Mecanismo de Banco de Dados não pode alocar mais bloqueios do que o valor especificado em bloqueios. Aumente esse valor se o SQL Server exibir uma mensagem de que você excedeu o número de bloqueios disponíveis. Como cada bloqueio consome memória (96 bytes por bloqueio), aumentar esse valor pode exigir o aumento da quantidade de memória dedicada para o servidor.

  • A opção bloqueios também é afetada quando ocorre escalonamento de bloqueio. Quando a opção bloqueios está definida como 0, o escalonamento de bloqueio ocorre quando a memória usada pelas estruturas de bloqueio atuais atinge 40% do pool de memória do Mecanismo de Banco de Dados. Quando a opção bloqueios não está definida como 0, o escalonamento de bloqueio ocorre quando o número de bloqueios atinge 40 por cento do valor especificado para bloqueios.

Segurança

Permissões

Permissões de execução sem parâmetros ou com apenas o primeiro parâmetro em sp_configure 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 instrução RECONFIGURE, o usuário deve ter a permissão ALTER SETTINGS no nível do servidor. A permissão ALTER SETTINGS é implicitamente mantida pelas funções de servidor fixas sysadmin e serveradmin .

Como usar o SQL Server Management Studio.

Para configurar a opção locks

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

  2. Clique no nó Avançado .

  3. No item Paralelismo, digite o valor desejado para a opção locks .

    Use a opção locks para definir o número máximo de bloqueios disponíveis, limitando a quantidade de memória que o SQL Server usa para eles.

Usando o Transact-SQL

Para configurar a opção locks

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

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Executar. Este exemplo mostra como usar sp_configure para definir o valor da opção locks para definir o número de bloqueios disponíveis para todos os usuários como 20000.

USE AdventureWorks2022;  
GO  
sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE;  
GO  
sp_configure 'locks', 20000;  
GO  
RECONFIGURE;  
GO  

Para obter mais informações, confira Opções de configuração do servidor (SQL Server).

Acompanhamento: depois de configurar a opção locks

O servidor deve ser reiniciado para que a configuração entre em vigor.

Consulte Também

RECONFIGURE (Transact-SQL)
Opções de configuração do servidor (SQL Server)
sp_configure (Transact-SQL)