Restore de uma tabela

436 views
Skip to first unread message

Roger Camatini

unread,
May 12, 2014, 1:05:33 PM5/12/14
to sqlse...@googlegroups.com
Boa tarde Galera,

Eu já ouvi muita gente falando que precisou, ou se quando necessitar não sabe como o fazer, mas gostaria da opinião dos mais experientes, dos que já passaram por este tipo de situação, então vamos lá.

No oracle temos o famoso export/import nos dando a possibilidade de restaurar uma unica tabela do backup, ou schema.

No SQL Server sei que da pra fazer isso, mas de uma forma um pouco diferente, mas dependendo do tamanho do database seria inviavel(ter que restaurar todo o backup para então copiar os dados da tabela que desejamos). Tem como fazer restore de apenas uma tabela no SQL Server da mesma maneira como é feito no Oracle?

Agradeço desde já a ajuda.

Atenciosamente,
Rogério Camatini.

Gustavo Maia

unread,
May 12, 2014, 1:16:36 PM5/12/14
to sqlse...@googlegroups.com
Bom dia,

Export & Import não é bem um backup, mas apenas uma baixa do conteúdo de uma tabela. Você pode fazer algo similar no SQL usando o BCP por exemplo.

O SQL não tem backup de tabelas mas sim de filegroup (ou tablespace no Oracle). Se vc tiver uma tabela por filegroup ou guardar todas as tabelas de seu schema nesse filegroup bastará fazer o backup por filegroup para ter indiretamente o backup por tabela ou schema.

Honestamente eu não recomendo o uso. Montar uma estratégia baseada em filegroups pode complicar muito seu processo de restore (que passa a depender de logs). Isso seria interessante em situações em que restaurar um backup todo demore muito tempo e (ou) seja impraticável.

Na maioria das situações você dificilmente precisará restaurar uma tabela e mesmo quando isso ocorrer o preço a pagar pelo restore full é pequeno. Digamos que sua vazão em restaurar um backup de fita seja 25Mb / S (baixo na minha opinião). Nessa vazão um restore de uma base de 100GB por exemplo vai gastar pouco mais de uma hora. Será que não vale o preço para que vc não complique suas estratégias de backup ? Eu acho que sim.

Outra alternativa é trabalhar com CDC para rastrear alterações de tabelas criticas de forma a ter a possibilidade de recuperar seu conteúdo e (ou) então adquirir essas ferramentas de leitura de log para a partir do log de transações criar um script de Undo.

My 2 cents
--

---
You received this message because you are subscribed to the Google Groups "SQLServerDF" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sqlserverdf...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Leonardo Pedroso Costa

unread,
May 12, 2014, 1:38:15 PM5/12/14
to sqlse...@googlegroups.com
Roger,
nativamente não conheço nada que faça isso. Só essas estratégias do tipo que o Gustavo mencionou.

Talvez o SQL Virtual Restore da RedGate possa lhe ajudar.
--

Leonardo Pedroso Costa
DBA SQL Server
Belo Horizonte - MG

Roger Camatini

unread,
May 12, 2014, 1:46:44 PM5/12/14
to sqlse...@googlegroups.com
Gustavo e Leonardo,

Obrigado pelas informações. Não vou mudar minha politica de backup, pois minhas bases de dados no momento são pequenas, confio muito no backup do SQL Server muito mais rapido e performatico, mais que o rman do Oracle, no caso o assunto que levantei foi apenas para sanar minhas duvidas.


Atenciosamente,
Rogério Camatini.

Alexandre Araujo

unread,
May 12, 2014, 5:02:45 PM5/12/14
to sqlse...@googlegroups.com
Roger, voce pode usar aquela funcionalidade de exportar schema e dados do SSMS . Um tempo atras eu comecei a automatizar com powershell selecionando apenas objetos pontuais mas com a correria ficou no esquecimento. 


Abs.,

Alexandre Araujo



--
Reply all
Reply to author
Forward
0 new messages