Recentemente, comecei a função de DBA júnior... Ontem criei um novo banco de dados para um colega de trabalho e meu chefe me pediu para garantir um plano de backup o mais rápido possível.
Não pensei muito sobre isso, entrei no agente, criei um trabalho que fazia um backup completo todas as noites à 1h. Orgulhosa de mim mesma, fui para a cama e não pensei mais nisso. Esta manhã, comecei a pensar que isso não era "bom o suficiente" - se o banco de dados morresse às 12h, eles perderiam quase 23 horas de dados, o que provavelmente me demitiria. :)
Portanto, para ter certeza de que entendi isso, acho que preciso fazer backups diferenciais além do meu backup completo. Depois de ver este tutorial , tive algumas perguntas:
- Eu simplesmente entraria no agente e adicionaria um trabalho que acontece a cada hora (por exemplo) que cria um backup diferencial?
- Se o meu entendimento estiver correto, isso faria o backup do log transacional a cada hora até 1 da manhã, quando ele fizer um backup completo, então "redefiniria" o T-Log e começaria novamente a partir do dia seguinte, então no máximo seria 1 hora de perda de dados - correto?
- Então, no final, eu teria 2 tarefas no agente, uma que dispara todos os dias à 1h para fazer um backup "COMPLETO" e outra que dispara a cada hora que faz um backup diferencial?
Kin está correto em indicar a você a solução de backup e manutenção de Ola Hallengren .
Parece que você é novo, então considere também verificar:
Aaron Bertrand está correto ao apontar para você Por que o log de transações continua crescendo ou fica sem espaço? .
Usr está correto; até que você teste as restaurações, assuma que seus backups são inúteis.
Os comentaristas também estão corretos, você deve consultar a empresa.
Mais detalhadamente, você precisa de:
No que diz respeito a um plano de backup geral, eu começaria considerando:
Acho que esta é a pergunta mais popular: "Com que frequência devo fazer backup de meus bancos de dados". Então, aqui estão algumas respostas simples: "Tudo depende do tamanho do seu banco de dados? Com que frequência você faz alterações no seu banco de dados? E qual a importância dos seus dados?"
Por exemplo, você pode fazer um backup completo a cada 24 horas (como você faz), backup diferencial a cada 6 horas e backup do log de transações a cada hora. Então, agora vamos nos aprofundar:
Backup completo do banco de dados:
Um backup completo do banco de dados faz o backup de todos os arquivos de dados e da parte ativa do log de transações. A parte ativa do log de transações é necessária para restaurar um banco de dados para um ponto transacionalmente consistente. Lembre-se: se você usar o modelo de recuperação simples, o log de transações será truncado durante o processo de ponto de verificação. E a recuperação pontual não é possível.
Backup de banco de dados diferencial:
Um backup diferencial é criado de forma semelhante a um backup completo, mas com uma diferença importante – o backup diferencial contém apenas os dados que foram alterados desde o último backup completo (a parte ativa do log de transações). Os backups diferenciais são cumulativos e não incrementais. Isso significa que um backup diferencial contém todas as alterações feitas desde o último backup completo, apesar de já terem sido incluídas em backups diferenciais anteriores.
Backup do log de transações
Um backup de log de transações contém todos os registros de log de transações que foram feitos entre o último backup de log de transações ou o primeiro backup completo e o último registro de log criado após a conclusão do processo de backup. O backup do log de transações permite restaurar um banco de dados para um determinado ponto no tempo antes da ocorrência da falha. É incremental, o que significa que, para restaurar um banco de dados para um determinado ponto no tempo, todos os registros do log de transações são necessários para reproduzir as alterações do banco de dados até esse ponto específico no tempo. Observe que o backup do log de transações está disponível apenas para modelos de recuperação full ou bulk-logged.
Suponha que você use esse agendamento de backup de banco de dados com backup completo a cada 24 horas, backup diferencial a cada 6 horas e log de transações a cada hora. E seu banco de dados é executado no modelo de recuperação total. Olhe para a foto abaixo:
Alguns dados cruciais foram excluídos às 20h30, o melhor que podemos fazer neste caso é restaurar o banco de dados para 20h29. O processo de restauração será o seguinte:
Neste caso, os dados das 20:29 às 21:00 serão perdidos.