Logo no primeiro momento percebemos qual era o problema. Eles não conseguiram encolher seu TempDB mesmo que eles estivessem executando o comando SHRINKFILE por diversas vezes.
Antes de todos pular e começar a falar, que não devemos reduzir o banco de dados, pois isso é ruim para o sistema e desempenho, Eu Concordo.
Agora, deixe-nos ver como podemos encolher o banco de dados TempDB.
1
2
3
4
5
6
| CHECKPOINT GO DBCC FREEPROCCACHE GO DBCC SHRINKFILE (TEMPDB, 1024) GO |
Quando os usuários estavam executando apenas o Shrink File, eles não conseguiram reduzir o banco de dados.No entanto, quando recorremos ao DROPCLEANBUFFERS funcionou bem. No entanto, note que DROPCLEANBUFFERS irá remover todo o cache de PROCEDURES, o que pode diminuir a velocidade de alguns sistemas imediatamente, pois eles precisam reconstruir novamente os caches.
Atenção, reduza o seu TempDB SOMENTE se estiver fora do ar ou em situações criticas!
Se você chegar ao ponto em que você necessite reiniciar os serviços para reduzir o database, você pode considerar uma ultima opção e então executar o DBCC FREEPROCCACHE (que irá funcionar como quando você reinicia os serviços, não apenas remove o cache, mas também todas as paginações de dados em cache).
Referências: Pinal Dave
https://docs.microsoft.com/pt-br/sql/relational-databases/databases/shrink-a-database
https://docs.microsoft.com/pt-br/sql/t-sql/database-console-commands/dbcc-dropcleanbuffers-transact-sql
https://docs.microsoft.com/pt-br/sql/t-sql/database-console-commands/dbcc-freeproccache-transact-sql
Nenhum comentário:
Postar um comentário