Usuário com melhor resposta
Alterar config dos datafiles durante uma migração

Pergunta
-
Bom dia pessoal;
Esteri efetuando uma migração de banco do 2000 para o 2005 hoje a noite.
Meu banco possui 1 datafile apenas com 14Gb, estou pensando em dividir em datafiles de 2gb cada.
A migração será feita usando backup / recovery.
Eu poderia dar um (backup database blabla to disk caminho\blabla.bak) apenas ou preciso de algum comando em especial para no momento do recovery conseguir dividir o datafile?
Respostas
-
Boa Noite,
Você pode adicionar um novo arquivo de 7GB e depois realizar um SHRINK no primeiro arquivo para que ele diminua de 14GB para 7GB. Ex:
USE MASTER GO ALTER DATABASE Banco ADD FILE (NAME='ArquivoLogico', FILENAME='C:\ArquivoFisico.MDF') GO USE Banco GO DBCC SHRINKFILE(1,7168) GO
[ ]s,
Gustavo Maia Aguiar
http://gustavomaiaaguiar.spaces.live.com
Faça um avalicação inicial dos seus conhecimentos em SQL Server
http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!399.entry
Classifique as respostas. O seu feedback é imprescindível- Marcado como Resposta Junior Galvão - MVPMVP, Moderator sábado, 13 de junho de 2015 03:41
-
Ricardo,
Devo concordar com o Gustavo, se partimos do principio que cada banco de dados é formado por um conjunto de arquivos, se você deseja dividir os arquivos de dados para realizar a migração, você concorda que não temos como identificar em qual arquivos estamos realizando a leitura do dado.
Com isso fica a recomendação de realizar um backup completo do seu banco de dados, restaurar no novo local e depois disso adicionar o novo arquivo como o Gustavo destacou e por fim realizar o DBCC ShrinkFile para realizar a diminuição lógica e física do seu banco de dados como também do arquivo de dados.
Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA- Marcado como Resposta Junior Galvão - MVPMVP, Moderator sábado, 13 de junho de 2015 03:41
Todas as Respostas
-
Boa Noite,
É sempre uma boa prática tentar não misturar tarefas administrativas com tarefas de migração (a menos que seja realmente necessário). Se você adiciona mais tarefas, o downtime e o risco aumentam.
Não é possível dividir arquivos durante a restauração. Você terá que fazê-lo antes de gerar o backup ou após a restauração.
[ ]s,Gustavo Maia Aguiar
http://gustavomaiaaguiar.spaces.live.com
Faça um avalicação inicial dos seus conhecimentos em SQL Server
http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!399.entry
Classifique as respostas. O seu feedback é imprescindível -
-
Boa Noite,
Você pode adicionar um novo arquivo de 7GB e depois realizar um SHRINK no primeiro arquivo para que ele diminua de 14GB para 7GB. Ex:
USE MASTER GO ALTER DATABASE Banco ADD FILE (NAME='ArquivoLogico', FILENAME='C:\ArquivoFisico.MDF') GO USE Banco GO DBCC SHRINKFILE(1,7168) GO
[ ]s,
Gustavo Maia Aguiar
http://gustavomaiaaguiar.spaces.live.com
Faça um avalicação inicial dos seus conhecimentos em SQL Server
http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!399.entry
Classifique as respostas. O seu feedback é imprescindível- Marcado como Resposta Junior Galvão - MVPMVP, Moderator sábado, 13 de junho de 2015 03:41
-
Ricardo,
Devo concordar com o Gustavo, se partimos do principio que cada banco de dados é formado por um conjunto de arquivos, se você deseja dividir os arquivos de dados para realizar a migração, você concorda que não temos como identificar em qual arquivos estamos realizando a leitura do dado.
Com isso fica a recomendação de realizar um backup completo do seu banco de dados, restaurar no novo local e depois disso adicionar o novo arquivo como o Gustavo destacou e por fim realizar o DBCC ShrinkFile para realizar a diminuição lógica e física do seu banco de dados como também do arquivo de dados.
Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA- Marcado como Resposta Junior Galvão - MVPMVP, Moderator sábado, 13 de junho de 2015 03:41
-
Boa tarde Maia,
Fiz o teste que você falou.
Criei um banco em um servidor de testes com uns 500Mb em um único datafile.
Depois adicionei um datafile a este banco e usei o comando
DBCC
SHRINKFILE (1, 390);
o retorno foi isso:
DBId Field CurrentSize MinimumSize UsedPages EstimatedPages
7 1 64216 384 64200 64200
O arquivo não foi reduzido de tamanho, e o novo datafile continua lá com 3Mb.
Ricardo Muramatsu ricardomuramatsu@hotmail.com www.muramatsu.com.br -
Olá Ricardo,
Desculpe minha incompleta resposta. Após rodar o SHRINK FILE você deve rodar o comando ALTER DATABASE.
ALTER DATABASE Banco REMOVE FILE [Seu Arquivo]
Se o comando falhar, faça um backup de log, rode o SHRINK e em seguida o comando de ALTER.
[ ]s,Gustavo Maia Aguiar
http://gustavomaiaaguiar.spaces.live.comComo realizar cálculos com horas no SQL Server – Parte I
http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!516.entry
Classifique as respostas. O seu feedback é imprescindível