Ir para conteúdo

Procedure para restaurar bases de teste


ilanocf

Posts Recomendados


  • Tópicos Que Criei:  7
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  12
  • Conteúdo/Dia:  0.00
  • Reputação:   11
  • Pontos/Conquistas:  148
  • Conteúdo Resolvido:  0
  • Dias Ganho:  6
  • Status:  Offline
  • Idade:  53
  • Dispositivo:  Windows

Olá pessoal,

Aqui na empresa, sempre trabalhamos com bases de testes pois alguns setores se utilizam delas para realizar testes de processos, resgatar informações antigas, enfim. Sendo que estas bases de teste geralmente ficam disponíveis apenas para alguns poucos usuários do sistema TOTVS RM, principalmente quando se tem portal, muito embora isso possa ser resolvido dentro ou dos arquivos do portal ou em suas configurações. Bom, mas o fato é que não queremos perder tempo em fazer estas tarefas. Baseado nisso estou postando mais uma procedure que ajuda em muito a executar estes processos sempre buscando agilizar nosso trabalho.

O que o script faz?

  1. Identifica em variável o nome lógico do arquivo de dados: sua_base_Data
  2. Identifica em variável o nome lógico do arquivo de log: sua_base_Log
  3. Identifica em variável o caminho do arquivo MDF: E:\DATA\sua_base.mdf
  4. Identifica em variável o caminho do arquivo LDF: E:\LOG\sua_base.mdf
  5. Testa quais bases podem ser restauradas, pois sabemos que existem casos em que determinadas bases não podem ser restauradas como uma base de teste.
  6. Assegura que o nome do arquivo definido em variável pelo usuário possui a extensão .bak
  7. Assegura que o comando não será executado caso os parâmetros forem vazios
  8. Coloca a base em modo Offline antes de iniciar o restore
  9. Realiza o restore
  10. Retorna a base para Online
  11. Desabilita todos os usuário da tabela GUSUARIO, exceto aqueles que estão especificados na lista
  12. Altera o RECOVERY da base para SIMPLE
  13. Realiza a redução dos arquivos de log - SHRINKFILE
  14. Retorna o RECOVERY da base para FULL
  15. Retorna um select com os possíveis erros que tenha ocorrido durante o processo acima.

MODO DE USO:

USE master

GO

EXEC RESTAURA_BASE 'corpore_teste', 'SEU_ARQUIVO_DE_BACKUP.bak'

 

Espero que este script seja útil e que impulsione a outros para melhoria desta e outras rotinas de banco de dados.

Ilano Caldas

 

RESTAURA_BASE.sql

Editado por ilanocf
  • Like 2
Link para comentar
Compartilhar em outros sites

Participe da conversa

Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.

Visitante
Responder esse tópico

×   Você colou conteúdo com formatação.   Remover formatação

  Only 75 emoji are allowed.

×   Seu link foi automaticamente inserido no corpo do post.   Exibir como um link

×   Seu conteúdo anterior foi restaurado.   Limpar conteúdo do editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.