Nosso administrador de banco de dados saiu e como sou a única pessoa que conhece SQL, estou assumindo essas funções, mas ainda estou aprendendo.
Temos um servidor com vários bancos de dados SQL Server.
Eu os configurei para recuperação total para minimizar a perda de dados.
No fim de semana, descobri que um dos bancos de dados tinha um arquivo de log que ficava fora de controle e eventualmente preenchia o disco, e os backups dos arquivos de log de transações também haviam preenchido a unidade de backup, o que felizmente descobri antes que pudesse causar muitos problemas.
Fiz um arquivo reduzido no log do banco de dados e removi muitos backups de log de transações mais antigos, então tudo está bem no momento.
Estou tentando descobrir a melhor estratégia para reter backups e, como esta é uma área na qual sou novo, adoraria fazer uma verificação de integridade.
Atualmente, temos um backup completo semanal todos os domingos à noite, um backup diferencial diário nas outras noites e, para garantir que nada seja perdido durante o dia, backups de log de transações a cada 15 minutos.
Os backups completos semanais também são movidos para fora do local, para que não tenhamos um único ponto de falha.
Meu pensamento é, para economizar espaço, que uma vez que um backup completo aconteça no domingo, os backups diferenciais e de log de transações não sejam mais necessários, e então talvez eles possam ser simplesmente eliminados, e então eu manteria vários meses de semanalmente backups por motivos de segurança.
Ou seria uma má ideia?
Deixe-me resumir.
Sua estratégia de backup: backup completo semanal, comparação diária e backup de log a cada 15 minutos parece razoável, no entanto (com base em suas perguntas) vejo falta de comunicação sua e do proprietário da empresa.
Não é uma pessoa aleatória da Internet que deve sugerir que você descarte ou mantenha backups; deve ser a pessoa que paga as contas (seu salário, licença do SQL Server e despesas de armazenamento) para responder a essa pergunta.
Essas pessoas não se importam com seus backups, elas precisam de CAPACIDADE DE RECUPERAÇÃO. Eles precisam definir até que ponto o backup precisa ser recuperado e fazer perguntas
Como novato, sinta-se à vontade para marcar uma reunião com eles e esclarecer:
Se todos vocês estão na mesma página - ótimo. Se eles não estão satisfeitos (quero tudo, quero agora), existem opções e preço.
Aqui estão minhas sugestões.
A cada 15 minutos de backup, há muitos arquivos (até 24 * 4 * 7 = 672) e é difícil e propenso a erros colocá-los manualmente, então recomendo usar sp_DatabaseRestore
Espero que você execute backups não no servidor local, mas no compartilhamento de rede, para que possa configurar um servidor com o único propósito de testar a restauração de bancos de dados desse compartilhamento, para que, se falhar, você tenha tempo para corrigi-lo.
Como bônus, você pode executar o CHECKDB após a restauração. Além disso, você tem espaço pré-alocado para seus bancos de dados. Você pode até usá-lo para consultas, mas atenção: se você ler terá que licenciá-lo.
E quanto a outras partes da equação, como logins, senhas para logins do SQL Server, funções de servidor para logins, certificados, trabalhos de agente SQL, pacotes SSIS, servidores vinculados, etc.?
Ele é armazenado em bancos de dados do sistema, mas a restauração desses bancos de dados não é praticada com muita frequência, portanto, você pode criar scripts regularmente.