Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
308
Assunto : SQL Server
Titulo: Separando tabelas em um filegroup diferente

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



Na dica 187 é mencionado que para facilitar o processo de recuperação de um banco com perda 0 de dados em caso de problemas no servidor é recomendado que as tabelas de sistema e as tabelas de dados sejam separadas em filegroups separados.

Em um banco existente esse processo pode ser trabalhoso, mas o script abaixo pode ajudar um pouco. Antes de roda-lo, porém, é necessário ter em script todos os objetos relacionados a tabelas, como constraints, indices e triggers.

Deve-se então criar o novo filegroup para onde serão transferidas as tabelas de dados e este novo filegroup deve ser marcado como filegroup default. O script a seguir então faz a transferência das tabelas de dados para o novo filegroup :

declare x cursor for select table_name from information_schema.table where table_type='BASE TABLE'

declare @tab varchar(100)
declare @instrucao varchar(500)
declare @tab2 varchar(103)

open x
fetch next from x into @tab
while @@Fetch_Status=0
Begin
select @tab2=@tab + 'tmp'
select @instrucao='select * into ' + @tab2 + ' from ' + @tab
exec(@instrucao)
select @instrucao='drop table ' + @tab
exec(@instrucao)
select @instrucao='exec sp_rename ' + @tab2 + ',' + @tab
exec(@instrucao)
fetch next from x into @tab
end
close x
deallocate x

Este script deve ser agendado no servidor. Pode-se aproveitar o mesmo agendamento no servidor para rodar também o script com os objetos associados as tabelas, script que vc tomou cuidado de guardar anteriormente.



Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
Nenhum comentário foi realizado ainda. Seja o primeiro !
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br