Estou procurando alguns conselhos. Eu tenho que reconstruir meus índices de banco de dados (por causa da redução), mas devido ao pouco espaço em disco, não tenho certeza de qual modelo de recuperação é melhor para evitar erros de falta de espaço em disco para aumentar o tamanho do arquivo de log. Por favor, ajude-me a escolher entre o modelo de recuperação de log simples ou em massa.
relate perguntas
-
SQL Server - Como as páginas de dados são armazenadas ao usar um índice clusterizado
-
Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?
-
Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?
-
Quais são as principais causas de deadlocks e podem ser evitadas?
-
Como determinar se um Índice é necessário ou necessário
Encolhimento é uma operação de desperdício. . A manutenção de índice, como recompilações de índice, também é uma operação inútil. . A reconstrução de seus índices gerará muito espaço alocado não utilizado no arquivo de dados. A fragmentação do índice é bastante sem sentido em relação ao desempenho. Como você viu, a redução do banco de dados causa altos níveis de fragmentação de índice. É um ciclo vicioso, como Brent menciona no primeiro artigo que vinculei. Meu conselho, também não faça (exceto em circunstâncias muito raras).
Mas se você ainda estiver preocupado em reconstruir seus índices, fazer isso com o Simple Recovery Model pelo menos minimizará o log em seu log de transações no processo. No entanto, não economizará espaço no arquivo de dados. O problema é que, ao mudar para o modelo de recuperação simples, você perde a recuperação pontual após o último backup completo e, portanto, corre o risco de perda de dados até o próximo backup completo. Você não poderá utilizar a recuperação pontual até que você volte para o modelo de recuperação completa e, em seguida, faça um backup completo também. Se seus objetivos de ponto de recuperação puderem tolerar isso, tudo bem.
Existem alguns recursos que você pode usar para reconstruir seus índices que podem ajudar sua causa.
Se você tiver seu TEMPDB em um disco dedicado, tente executar a reconstrução do índice utilizando o TEMPDB. Além disso, você pode trabalhar de pequeno a grande limitando o número de páginas ao executar a otimização de índice.
Você poderia usar os trabalhos de OLA hallengren para isso. https://ola.hallengren.com/sql-server-index-and-statistics-maintenance.html
Ao usar o OLA Hallengren, eu também recomendaria atualizar as estatísticas separadamente. Quanto ao modelo de recuperação, não tenho certeza se isso importa.
Acredito que o consenso geral em relação à fragmentação, acima de 5% é recomendado reorganizar e acima de 30% deve-se reconstruir.