Faça backup e restaure o banco de dados do SQL Server com o grupo de arquivos FILESTREAM


8

Eu uso o SQL Server e tenho um banco de dados enorme com dois grupos de arquivos:

  • Primário : que contém todos os dados, exceto os arquivos grandes (mais de 1 MB)
  • FILESTREAM (leitura / gravação) : que contém os arquivos grandes

Agora, o cenário de backup é:

  • Toda sexta-feira, obtenha um backup completo (2h)
  • Todos os dias da semana, exceto sexta-feira, obtenha um backup diferencial (2h)

Como o banco de dados é grande e está em produção em um servidor remoto, sempre que eu quero trazer o banco de dados para o meu ambiente local para criar um banco de dados de teste (semanalmente), tenho que trazer o primário e o fluxo de arquivos.

Eu gostaria de poder alterar a maneira como os backups e as restaurações são executados, de tal maneira que apenas foi necessário trazer o grupo de arquivos primário, ignorando o fluxo de arquivos. Dessa forma, toda semana eu traria apenas o grupo de arquivos primário e não todas as informações que supõem o fluxo de arquivos.

Eu acho que pode haver muitos problemas, e todas as referências de filestream podem ser perdidas ao acessar os arquivos. Gostaria de saber se é possível modificar o conteúdo de todas as colunas do fluxo de arquivos ao executar um backup ou usar um fluxo de arquivos diferente hospedado no ambiente de teste. Além disso, ouvi falar sobre a Restauração fragmentada de apenas alguns grupos de arquivos, mas tenho muitas dúvidas sobre como executá-la.

Pergunta 1: posso ter esse cenário?

Pergunta 2: é uma boa idéia ter apenas um backup completo e trazer backups diferenciais / logs de transações para o ambiente de teste?

Pergunta 3: posso ter um cenário melhor para fazer backup e restaurar?

Sou todo ouvidos às recomendações. Se você tiver algum exemplo, por favor, mostre-me com uma consulta T-SQL.


A Visão geral do Filestream nos informa explicitamente que você pode excluir os grupos FILESTREAM de seus backups. Porém, a implementação do TSQL seria incrível de ver
clifton_h 9/09/17

Sim, você pode excluir o FILESTREAM do seu backup, mas no processo de restauração precisará fornecê-lo. Acho que isso sempre é necessário quando o seu grupo de filestream é de leitura e gravação. Isso significa que você pode fazer uma cópia de segurança apenas parcial dos seus dados e outro backup, incluindo grupos de arquivos read-write (que contém os arquivos)
Mario Navarro Claras

Respostas:


1

Gostaria de saber se é possível modificar o conteúdo de todas as colunas de fluxo de arquivos ao executar um backup

Não.

Eu criaria meu banco de dados de teste com o mesmo esquema que o banco de dados de produção e, em seguida, escreveria um script personalizado para sincronizar os dados no grupo de arquivos primário (isso é bastante fácil, pois seu sistema de produção é a fonte, portanto, a sincronização é apenas em uma direção )

Depois, com os dados do fluxo de arquivos, eu stub os arquivos, o que pode ser feito de várias maneiras. Em cima da minha cabeça, de alguma forma eu geraria arquivos de zero byte no lado do teste.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.