Modelo de recuperação do SQL Server 2008 / R2

11

Praticamente todos os nossos bancos de dados em determinados servidores não exigem o modelo de Recuperação Total (não fazemos backups de log de transações) e o padrão sempre deve ser criar bancos de dados e especificar o modelo de Recuperação Simples.

Frequentemente e por certas razões práticas, muitos bancos de dados são criados usando o SSMS. No entanto, erros podem ser cometidos e o operador pode esquecer de especificar o modelo de Recuperação Simples. Isso leva a uma "surpresa" alguns dias depois, quando a caixa está com problemas de espaço em disco devido a três ou quatro arquivos de log de 60 GB que nunca foram truncados.

Posso tornar o modelo de recuperação simples a configuração padrão para novos bancos de dados, configurando o modelo de recuperação no modelbanco de dados. No entanto, isso é recomendado, se eu fizer isso, ele poderá voltar e me morder de alguma forma no futuro?

Kev
fonte

Respostas:

17

Eu vejo uma das três opções aqui:

1) você pode ter um script de modelo para criar bancos de dados que incluam explicitamente o modelo de recuperação.

2) você pode definir o modelbanco de dados como simples e não precisa se preocupar com isso.

3) você pode esperar que todos se lembrem, o que parece ser o que você está fazendo. (não recomendado)

Eu pessoalmente iria com o número dois. É para isso que serve o banco de dados de modelos.

Thomas Stringer
fonte
Concordo com o nº 2 e sigo essa prática. Além disso, se você se encontra em uma organização que permite que qualquer pessoa crie algo em um servidor de banco de dados DEV, isso impede que qualquer um cause impacto sobre si ou para os outros.
Jl01 28/09
1
# 2 é o caminho a percorrer aqui.
mrdenny
5

Adicionando a @ Surfer513

4) Política de gerenciamento baseado em políticas, para impor o modelo de recuperação simples ou, no máximo, informar quando um banco de dados não é

Embora eu prefira a configuração do modelo como simples, isso não impede que o comando T-SQL seja usado e a configuração para outra coisa. Você pode usar uma política para avaliar se o modelo de recuperação não é Simples e optar por que a política o altere para você.

Este artigo do MSSQLTip.com trata da verificação de Full, mas você pode facilmente fazer o seu com Simple. Você também pode verificar se um backup também ocorreu no banco de dados.


fonte
-1

A aposta segura é colocar seu banco de dados no modo completo, mas você tem o problema de crescimento de log. Agora, existem algumas opções:

  • Coloque um limite no tamanho máximo do seu arquivo de log. Isso afetará as operações quando esse limite for atingido. O benefício é que ele evitará cenários em que o disco fique sem espaço e você terá problemas maiores.
  • Crie alertas que são acionados assim que seu arquivo de log crescer acima de uma marca d'água e gerencie-o.
  • Agende trabalhos de redução de log. O shriking de log prejudica o desempenho do seu banco de dados. Eu não sugeriria isso.

Sendo o DBA, você deve usar todas as opções que ajudam na recuperação. Também depende do seu SLA com a empresa.

Tudo isso dito, eu gerencio alguns bancos de dados no modo simples. Isso ocorre devido às isenções de responsabilidade descritas no SLA. A empresa decidiu não gastar em unidades para os arquivos de log (você pode levar um cavalo para a água, mas não pode fazê-lo beber). A empresa gerencia o backup, a restauração e a recuperação de desastres. Houve um DR e o dinheiro perdido foi maior do que o que teria custado em espaço em disco extra.

StanleyJohns
fonte
2
Esta resposta desconsidera o que o usuário deseja fazer. Quanto aos seus pontos: 1 é válido; 2 adicione mais detalhes. Também para gerenciar o tamanho do log, você precisa fazer backups completos / de log; 3 você nunca poderá reduzir os arquivos de log, a menos que os faça backup para liberar espaço. Quanto ao desempenho, o encolhimento só dói quando o arquivo de log cresce novamente. Os arquivos de log se comportam de maneira diferente dos arquivos de dados.
Eric Humphrey - lotsahelp 28/09
Definir um tamanho máximo no log de transações geralmente é um plano muito ruim, pois isso causará uma interrupção sem que o disco esteja cheio. # 3 é uma péssima idéia que nem deveria ter sido levantada.
mrdenny