Fazer backup do servidor com vários tipos de bancos de dados todas as noites

1

Eu tenho um servidor web executando o Windows Server 2012, com três coisas principais:

  • Material da Web (arquivos html, php, etc)
  • um banco de dados mySQL
  • um banco de dados de solr

Ocorreu-me hoje que estive tão ocupado com o desenvolvimento no ano passado que não pensei uma vez em apoiar qualquer coisa - e felizmente isso me ocorreu hoje e não depois que o servidor caiu!

Eu estou querendo saber qual seria o melhor método para fazer um backup a cada noite dessas três coisas diferentes. Eu imagino que eu poderia:

  • crie algum tipo de "imagem de disco", o que seria legal, pois eu poderia armazenar as imagens e reverter facilmente os dados de ontem se algo catastrófico acontecesse, mas eu só criava imagens de disco para uso pessoal, e se a minha unidade tiver 1TB, a imagem é 1TB - não sei se essa é a única maneira de fazer isso, e não tenho certeza se tenho espaço no disco rígido para fazer isso todas as noites. Plus - Eu só tenho 1 servidor, com 2 drives nele, então eu não tenho certeza de onde eu estaria fazendo isso. Se essa fosse a melhor opção, eu encontraria uma maneira de fazer isso funcionar.

  • Eu poderia escrever um script para copiar todos os arquivos da web (php, html, etc) a cada noite, e é relativamente fácil escrever um script de backup do MySQL, mas pesquisar na web por fazer backup do solr não parece tão direto. É claro, acho que eu poderia descobrir isso e depois recapitular essas três coisas individualmente, mas provavelmente seria mais difícil alguém conseguir esses dados de volta à empresa se algo acontecesse comigo.

  • Há (sempre) uma terceira opção que não estou vendo

por Brian Powell 16.08.2016 / 22:39

4 respostas

1

Existem muitos aplicativos que fazem um trabalho incrível fazendo backup de backups em SQL, arquivo, estado do sistema ou em nível de arquivo simples, especialmente para o Windows. Eu recomendaria utilizar cloudberry ou algum outro pacote de software de sua escolha para tirar o elemento humano do backup. Backup do banco de dados sql, estado do sistema e arquivos / diretórios selecionados, incluindo a pasta de índice solr.

Além disso, uma combinação de planos de backup com script SQL e scripts em lote executados com o agendador de tarefas (como você parecia mencionar na sua pergunta) também funcionaria. No entanto, se você seguir essa rota, certifique-se de verificar com frequência ou usar um utilitário como o vbackup, que permite que você faça alguns logs! Eu posso fornecer exemplos de scripts que usei também se você quiser.

EDIT: Para responder a sua pergunta mais profundamente, utilizando aplicativos como o Cloudberry permitiria compressão, criptografia e requisitos de largura de banda muito menores.

    
por 16.08.2016 / 23:00
3

Bem-vindo ao mundo do backup Brian! Eu acho que eu estava em sua posição há algum tempo quando pensava em backups como perda de tempo e, talvez, dinheiro, mas você chega ao ponto de ser mordido!

Acho que você precisa de um backup baseado em imagem com integração VSS que garanta a consistência de seus dados e backups. Existem muitas soluções disponíveis com várias opções, preços, etc.

Tudo que você precisa considerar:

1) Armazenamento, basicamente onde você precisa manter seus backups (por exemplo, on-site ou off-site = > na nuvem) 2) RTO, RPO = > pense na quantidade de perda de dados (isso faz com que sua frequência e diário de backups) e na velocidade de recuperação (por exemplo, a rapidez com que você recupera dados depende do caso), - ambos fazem sua política de retenção geral. 3) Solução. Eu tentei diferente e do topo da minha cabeça eu posso sugerir o seguinte: Cloudberry Backup, Veeam Endpoint, Crashplan e alguns outros. 4) Quais as opções de recuperação que você precisa (basicamente o que você quer proteger o seu próprio formulário, por exemplo, todo o computador, alguns arquivos, transações mysql / DBs / instâncias / opção para reverter etc ..). Isso tudo basicamente deve ser considerado em conjunto com # 2 RTO ..

Pense e pondere as 4 coisas acima e tome decisões. E sim, os backups são importantes, especialmente quando você começa a perder seus dados, assim você está em posição de pressa! Backups são seu seguro.

    
por 17.08.2016 / 18:30
1

A imagem do disco funcionará se todas as aplicações forem interrompidas - caso contrário, você não saberá se tem transações pendentes pendentes ao fazer o despejo. É também uma maneira lenta de restaurar se você não precisa restaurar a coisa toda.

Os dumps do MySQL são fáceis, assim como os arquivos baseados em texto (git com git push automatizado é uma boa idéia). Para o solr, parece que existe uma URL de backup que você pode chamar, que irá descarregar, mas eu só a utilizo no Elasticsearch para YMMV.

    
por 16.08.2016 / 22:46
1

Eu recomendaria o backup de cada item separadamente. Dessa forma, se algo der errado com apenas um item, você só precisará recuperar esse item ...

Parece que você está no caminho certo para o backup de conteúdo da Web, mas para SQL eu sugiro usar a funcionalidade de trabalho no servidor MSSQL (em oposição ao agendador de tarefas). Isso traz o benefício adicional de fornecer um histórico do status da execução do trabalho. link

    
por 16.08.2016 / 23:20