Como vocês sabem eu trabalho como consultor SQL Server com foco em performance e desempenho das aplicações de todos os clientes que eu atuo diariamente. E hoje eu vou compartilhar aqui mais uma dica que ajudou um dos clientes a melhorar o desempenho das aplicações utilizando a opção da base de dados AUTO_CLOSE OFF.
Esse cliente me chamou no Skype solicitando uma ajuda, pois seu ambiente de SQL Server estava lento. Achei curioso pois tinha ajudado ele alguns dias atrás com performance. Um outro trabalho que durou um dia inteiro para ser resolvido. Para ajudar ele nesse caso, deixei uma documentação que estava fazendo para atendê-lo.
Quando eu acessei o servidor, percebi que estava bem lento mesmo, executei alguns scripts e inicialmente não encontrei a causa raiz que me deixasse convencido de um problema de querys lentas. Resolvi iniciar novamente, porém fazendo uma análise mais detalhada.
Nessa análise identifiquei que a opção de banco de dados AUTO_CLOSE estava configurada como ON.
Para verificar isso, basta clicar com o botão direito na sua base de dados selecionar a opção propriedades e você verá (como na imagem acima) AUTO_CLOSE = TRUE. Você deve mudar essa opção para FALSE.
Ou executar comando T-SQL que dá no mesmo.
USE [master] GO ALTER DATABASE [AdventureWorks2014] SET AUTO_CLOSE OFF; GO
Qual o motivo disso?
Quando o AUTO_CLOSE está ativado ele causa degradação no desempenho da base de dados que é muito acessada resultando no aumento da sobrecarga de abertura e fechamento no SQL Server a cada nova conexão. Além disso quando está ligado, também limpa (remove) o cache após cada nova conexão.
Há cenários bem raros que você precise dessa configuração setada como ON. Porém na maioria dos casos é uma boa prática deixá-lo como OFF.
Acesse seu banco de dados agora mesmo e verifique se essa opção está configurada como ON (true), se estiver, verifique com seu DBA SQL Server por que está mantido como ON. Se você é o administrador do seu ambiente, você pode desativá-la setando como OFF (false).
Apenas fiz essa modificação no ambiente SQL Server e o servidor voltou ao normal sua performance.
Wesley Mota
Latest posts by Wesley Mota (see all)
- The Ultimate Guide to Gry Online Ruletka - novembro 14, 2024