Eu li muitos blogs aqui e ali sobre como configurar arquivos de dados tempdb, mas não encontrei nenhuma informação sobre o arquivo de log tempdb .
Aqui está a estratégia que estou usando atualmente com meu tempdb:
- Eu usei as recomendações de Paul Randal sobre como dividir meus arquivos de dados tempdb
- Eu configurei o tamanho dos meus arquivos de dados tempdb para o crescimento automático máximo e desativado. Por exemplo, tenho 100 GB de espaço livre em disco e defino o tamanho dos meus arquivos de dados de 8 tempdb como 10 GB cada. Isso evita a fragmentação no disco, conforme recomendado por Brent Ozar, e também tenho 20 gb grátis para o meu arquivo de log.
Mas, como eu disse, ninguém está falando sobre o arquivo de log tempdb . O que eu deveria fazer com isso? Na minha instalação, esse arquivo está no mesmo local que os arquivos de dados tempdb. Qual é o tamanho e o valor de crescimento automático que devo usar com o arquivo de log tempdb?
sql-server
sql-server-2012
tempdb
Alexandre Jobin
fonte
fonte
Respostas:
Realmente depende da quantidade de dados que fluirá pelo log de transações. Veja como o log fica grande hoje. Você precisa configurar o log para ter pelo menos esse tamanho quando o SQL iniciar. Para a maioria dos meus clientes, eles terminam com um log de transações de 3-4 Gig para o tempdb, que contém apenas alguns VLFs e tudo funciona bem e sem problemas.
fonte
Sempre me disseram para armazenar arquivos de log em uma matriz física / disco separada se o seu hardware puder gravar simultaneamente nos dados e efetuar logon ao mesmo tempo para melhorar o desempenho. Eu acho que a limitação que gerou seu limite de 20G tempdb pode definir uma resposta para o tamanho. Para crescimento automático, isso pode depender das transações que você está executando, além de espaço livre disponível e outros recursos no disco. Normalmente escolho arbitrariamente 1/6 do tamanho inicial.
fonte
Aaron está certo, a configuração do TempDB depende de muitas variáveis, como você planeja ou não usar o isolamento de instantâneo, etc. Aqui está um white paper mais antigo do SQL 2005 da MS / TN que pode ajudá-lo, uma vez que boa parte ainda se aplica. Especificamente, consulte o "Espaço necessário para o log do tempdb" para que você possa ver que tipos de transações são registradas no log do tempdb para poder configurar as coisas adequadamente. Provavelmente será o tipo de coisa que você precisará monitorar e ajustar com o tempo.
No que diz respeito ao crescimento autônomo do tempdb, desativei-o com relutância em um servidor de relatórios no passado e o comportamento que experimentei foi o de causar a interrupção e a reversão da transação de longa execução, liberando instantaneamente o espaço de log, mas que pode depender do O tipo de transação que, no meu caso, é de tipos massivos e operações de junção (consultas de relatório mal escritas). Concordo com Aaron e recomendo evitar isso, se possível, especialmente em situações de alto volume de transações.
fonte