Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se:SQL Server
Este artigo descreve como configurar a opção de configuração locks do servidor no SQL Server usando o SQL Server Management Studio ou Transact-SQL. A opção locks define o número máximo de bloqueios disponíveis, o que limita 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.
Recomendações
Essa opção é uma opção avançada e deve ser alterada apenas por um profissional de banco de dados experiente.
Quando o servidor é iniciado com os locks definidos como 0, o gerenciador de bloqueios adquire memória suficiente do Mecanismo de Banco de Dados para um pool inicial de 2.500 estruturas de bloqueio. À medida que o pool de bloqueios se esgota, mais memória é adquirida para o pool.
De modo geral, se for necessário mais memória para o pool de bloqueios do 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 max server memory (MB) não foi atingido), o Mecanismo de Banco de Dados alocará memória dinamicamente para satisfazer a solicitação dos bloqueios. No entanto, se a alocação dessa memória fizer com que uma paginação seja criada no nível do sistema operacional (por exemplo, se um outro aplicativo estiver sendo executado no mesmo computador como uma instância do SQL Server e usando essa memória), o espaço de bloqueio adicional não será alocado. O pool de bloqueios dinâmico não adquire mais do que 60% da memória alocada para o Mecanismo de Banco de Dados. Após o pool de bloqueios atingir 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 passarão a gerar um erro.
Recomenda-se permitir que o SQL Server use bloqueios dinamicamente. No entanto, você pode configurar locks e substituir a capacidade do SQL Server de alocar recursos de bloqueio dinamicamente. Quando locks estiver configurado com um valor diferente de 0, o Mecanismo de Banco de Dados não poderá alocar mais bloqueios do que o valor especificado em locks. 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 locks também afeta em que momento a ampliação de bloqueios ocorre. Quando locks estiver configurado como 0, a ampliação de bloqueios 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 locks não estiver configurado como 0, a ampliação de bloqueios ocorre quando o número de bloqueios atinge 40% do valor especificado para locks.
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.
Usar o SQL Server Management Studio
No Pesquisador de Objetos, clique com o botão direito do mouse em um servidor e selecione Propriedades.
Selecione o nó Avançado.
Em Paralelismo, digite o valor desejado para a opção
locks.Use a opção
lockspara configurar o número máximo de bloqueios disponíveis, o que limita a quantidade de memória que o SQL Server usa para eles.
Usar o Transact-SQL
Conecte-se ao Mecanismo de Banco de Dados.
Na barra Padrão, selecione Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Este exemplo mostra como usar sp_configure para definir o valor da opção
lockspara definir o número de bloqueios disponíveis para todos os usuários como20000.USE master; GO EXECUTE sp_configure 'show advanced options', 1; GO RECONFIGURE; GO EXECUTE sp_configure 'locks', 20000; GO RECONFIGURE; GO EXECUTE sp_configure 'show advanced options', 0; GO RECONFIGURE; GO
Para obter mais informações, consulte Opções de configuração do servidor.
Acompanhamento: após configurar a opção bloqueios
O servidor deve ser reiniciado para que a configuração entre em vigor.