SQL Backup Environment Question

1

DBAs por aí,

Temos um ambiente SQL que precisa de uma atualização de solução de backup e estamos procurando por algumas informações da comunidade. Há 8DBs espalhados por 4 servidores no total em 100 GB de tamanho, além de um 9º DB que é de 450 GB, o que é excluído nos números abaixo. Todos estão localizados em um data center com grande quantidade de largura de banda (OC-3).

Atualmente, os backups são executados a partir dos Planos de Manutenção do SQL Management Studio em uma matriz no datacenter com os DBs. Os backups fora do local são conduzidos por um funcionário que conecta uma unidade USB semanalmente e copia x os dados e os leva de volta ao escritório. Nós, idealmente, gostaríamos de remover o aspecto de um ser humano ter que entrar no data center para retirar os dados.

Atualmente, os backups são diários completos. O Lite-speed está disponível para compressão e poderíamos continuar a rodar fulls diariamente pelo conforto, ou poderíamos passar para uma mistura de 1 full 3 dias diff plus trans para alguns dos DBs e 1 full 6 days diff mais trans para o outro Bancos de dados, em vez de todos os fulls. Alguma idéia sobre isso?

Uma opção externa é usar o DFS ou outro mecanismo de cópia para sincronizar o compartilhamento de backup do data center em um compartilhamento no escritório / local externo em um T1 à noite. Na execução dos números, se formos mudar para o plano de diferenças, estamos olhando para ~ 6 GB na maioria das noites e ~ 19 GB nas noites de sábado de dados de backup. Se o T1 completo estivesse disponível para o processo de sincronização, seriam 9 horas na maioria das noites e 27 no sábado.

Outra opção é comprar um dispositivo com uma assinatura de backup fora do local para enviar dados do local externo para o data center de terceiros, mas podemos estar considerando um custo alto.

São cerca de 59,5 GB de dados por semana, por isso, se quisermos manter 2 meses, isto é, aproximadamente 0,5 TB.

Alguma opinião?

Obrigado antecipadamente!

    
por Malnizzle 20.10.2009 / 17:54

7 respostas

1

Acho que tudo depende de quanto dinheiro você pode gastar e de qual tipo de retenção você precisa. Nosso grupo de infraestrutura tem uma SAN com TB de armazenamento disponível para nós. Temos um compartilhamento de rede para uma pasta na SAN na qual escrevemos todos os nossos backups de SQL. Temos mais de 15 servidores SQL e mais de 150 bancos de dados. Eu tenho 1 plano de manutenção por banco de dados para backup completo (diariamente, fora de horas) e 1 plano para logs trans (a cada 15 minutos). Ambos os planos excluem arquivos com mais de 24 horas para manter o local do backup limpo. Isso me permite ter acesso a alguns dias de dados em caso de problemas. Os backups também são copiados para a fita todas as noites também. Aqueles podem ser mantidos pelo tempo que precisarmos. A nossa é atualmente 3 meses.

Eu definitivamente concordo que você precisa remover o aspecto humano como você disse. Idealmente, você não deveria realmente tocar em nada disso (exceto talvez fitas).

Eu, pessoalmente, não gosto das opções fora do site, já que pelo menos posso colocar a fita em mim, se for preciso. Eu sei que você tem acordos com eles para o serviço, mas ainda assim ...

Espero que ajude a dar algumas ideias.

    
por 20.10.2009 / 20:52
1

Definitivamente, haveria backups diferenciais e, se você conseguir usá-los, uma vez por mês backups completos que serão carregados manualmente se a janela de backup não permitir que o tempo os copie.

"KISS" Mantenha isso simples.

    
por 20.10.2009 / 20:12
1

Para restaurar a mistura de fulls / diffs / t-logs é uma escolha muito melhor. Haverá menos perda de dados, pois no máximo com o t-log você perde uma hora de dados em vez de um dia inteiro valer a pena. Como já li antes, a razão pela qual as pessoas fazem cópias de segurança é para as restaurações.

    
por 20.10.2009 / 20:17
1

Toda semana fazemos dois full e 4 incrementais (quase nada acontece no domingo em nosso sistema, então é um bom momento para executar a limpeza). 1 cheio é mantido no local e nós temos que configurar para rodar as fitas (Temos uma biblioteca de fitas muito agradável que temos 23 fitas e 1 fita de limpeza carregada)

1 total é enviado para fora do site. O primeiro cheio do mês vai para um cofre, os outros vão para um vendedor, Iron Mountain, que vem aqui e os pega.

Os totais em nossos backups são de aproximadamente 1,2Tb nos fulls e de 140Gb nos incrementais. O uso de diferenciais nos ajuda muito, porque os fulls demoram quase 22 horas e fazer isso todo dia é ridículo. Usamos o Backup Exec 11d com uma biblioteca de fitas HP MSL G3

    
por 20.10.2009 / 20:40
1

Quinto post - eu concordo com quase tudo postado até agora, e não vou repeti-lo.

Quando fazer backups completos / diferenciais / TransactionLog depende do que seus sistemas fazem e quando. Muitas vezes, isso funciona bem com o ciclo semanal, já que um dia tende a ser o dia de folga (domingo, ou talvez segunda-feira, quando você está limpando depois do fim de semana). Eu recomendaria backups completos pelo menos semanalmente; se esse backup for ruim, você terá que voltar para o anterior, e perder até duas semanas de dados não é tão ruim quanto perder até dois meses. (E há sempre alguma coisa ... outro departamento em um lugar que eu trabalhei de uma só vez acertar a situação "nenhum backup completo válido do banco de dados por meses" [ porque eles não estavam fazendo, mas essa é uma história diferente

Se o domingo for um dia lento, fazer reindexes, arquivos semanais e outros antes do backup completo semanal é uma boa ideia, para que todo esse trabalho não seja carregado em um backup diff. (Estou confortável com um backup completo semanal, mas, como sempre, depende muito de seus padrões de uso de dados e negócios.)

Parece que copiar os dados pela rede para o escritório em casa não é muito prático. O que acontece quando os dados crescem além de sua capacidade de copiá-los durante uma noite?

Backups em fita são bons e bastante automatizáveis (apesar de custarem dinheiro). Um serviço de armazenamento offiste também é bom; eles custam dinheiro, mas desde que eles têm que visitá-lo de qualquer maneira, talvez você possa levá-los a bater na sala do servidor? (Depende da segurança, acesso, etc, etc.)

    
por 20.10.2009 / 20:57
1
Pessoalmente, prefiro fazer backups completos diariamente e manter três gerações em disco - não costumo usar uma combinação total / diferencial devido ao risco de o backup completo não ser restaurado com êxito. Eu entendo isso é difícil se seus bancos de dados são grandes - mas 100GB não é muito grande nos dias de hoje.

Certifique-se de ter a versão mais recente do LiteSpeed e use o nível mais alto de compactação (a menos que os usuários tenham acesso ao sistema ao mesmo tempo em que seus backups sejam executados).

Considere remover quaisquer tabelas redundantes.

Verifique e remova quaisquer índices não utilizados.

Remova a fragmentação de suas tabelas e índices.

Considere arquivar dados antigos em outro banco de dados e fazer backup disso com menos frequência.

    
por 21.10.2009 / 16:25
1

Depende do seu orçamento, mas minha empresa acabou de migrar da fita para um sistema baseado em SAN de desduplicação com um espelho em um segundo data center - e eu ADOITO. Completamente pedras.

Eu tenho todos os DBs pequenos configurados com backups compactados completos todas as noites, e os maiores com fulls de duas ou uma vez por semana e os intervalos noturnos, todos em discos locais para facilitar as restaurações. O material de missão crítica adiciona backups de log de transações e envio de logs a um servidor SQL de failover quente fora do local.

Nos arquivos no disco local, o software de backup em fita automatizado (fitas virtuais, não os reais) copia os arquivos de backup em uma extremidade do espelho de desduplicação e o espelho é replicado para o outro centro de dados automaticamente. É como mágica, só que melhor.

    
por 27.10.2009 / 18:52