none
Plano de Manutenção - Executar Script RRS feed

  • Pergunta

  • Olá pessoal,

    Onde posso, no plano de execução, já deixar programado para todo final de semana executar o seguinte script:

    USE [master]
    GO
    ALTER DATABASE corpore_contabil SET RECOVERY SIMPLE WITH NO_WAIT
    GO
    USE corpore_contabil
    GO
    DBCC SHRINKFILE (corpore_Log,1)
    GO
    ALTER DATABASE corpore_contabil SET RECOVERY FULL WITH NO_WAIT
    GO

    Outra coisa, esse script pode acarretar algum problema ao banco se executado todos os finais de semanas ou seria ideal pôr um intervalo maior? Qual a política correta para esse tipo de script?

    Grato,

    Ilano.

    quarta-feira, 26 de abril de 2017 12:52

Respostas

Todas as Respostas

  • Veja o Componente 

    Wesley Neves

    quarta-feira, 26 de abril de 2017 20:31
  • Olá,

    Não existe um problema em fazer o SHRINK, mas se vocês está programando pra toda semana, quer dizer que seu Log cresce até um valor X em determinado momento da semana e ai vc faz o SHRINK certo?

    Se esse crescimento do log é frequente dada a alguma operação recorrente, não vejo sentido você efetuar o SHRINK regularmente, pois irá ficar num "cresce - encolhe" desnecessário. Ex. Ele aumenta 10 GB na quarta-feira durante uma carga qualquer. Ai você vai e diminui. Na próxima quarta ele vai aumentar novamente os 10 GB... não faz sentido.


    Agora se o que você quer fazer é garantir que o log fique pequeno no caso de algo inesperado ter aumentado seu tamanho, ok.


    Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */

    quarta-feira, 26 de abril de 2017 20:46
  • Olá pessoal,

    Desde já agradeço sua atenção.

    Wesley, fiz lá e deu belezinha, obrigado pela dica. Posso programá-lo para fazer a cada 25 dias, por exemplo? E a questão do TimeOut, qual a melhor definição?

    Mariana, o que está ocorrendo é que estamos percebendo esse aumento todo mês. É normal que o banco encha assim a ponto de os usuários não poderem acessar o sistema e termos que fazer o SHRINK todos os meses?

    Galera, que outras medidas podem ser tomadas para evitar esse tipo de problema?


    • Editado ilanocf quinta-feira, 27 de abril de 2017 14:46
    quinta-feira, 27 de abril de 2017 14:44
  • Olá pessoal,

    Desde já agradeço sua atenção.

    Wesley, fiz lá e deu belezinha, obrigado pela dica. Posso programá-lo para fazer a cada 25 dias, por exemplo? E a questão do TimeOut, qual a melhor definição?

    Resposta: Pode sim , nesse artigo ensina como vc vai fazer 

    https://www.codeproject.com/Tips/620768/Create-New-Jobs-In-SQL

    Agora esse JOB tem que rodar preferencialmente no fim de semana de madrugada.

    sobre o assunto :

    É normal que o banco encha assim a ponto de os usuários não poderem acessar o sistema e termos que fazer o SHRINK todos os meses?

    Galera, que outras medidas podem ser tomadas para evitar esse tipo de problema?

    Isso e um problema a parte , normal não é  tem muitos artigos que mostram como fazer o SHRINK 

    e logo após vc tem que fazer um Rebuild dos Indices ,



    Saudações...

    Por favor,  marque-o como respondidas se está respondeu a sua pergunta 
    ou marcá-lo como útil se está ajudou a resolver o seu problema 
    Wesley Neves
    MTA-Database Fundamentals 
    Analista Desenvolvedor.NET
    • Editado Wesley Neves quinta-feira, 27 de abril de 2017 14:55 correção
    quinta-feira, 27 de abril de 2017 14:55
  • ilanocf,

    " É normal que o banco encha assim a ponto de os usuários não poderem acessar o sistema e termos que fazer o SHRINK todos os meses?"

    Tudo depende do que está acontecendo no seu banco, do tamanho das transações etc. Agora, se o log chega ao tamanho máximo ao ponto de parar o sistema você tem que verificar outras coisas.

    Seu database está com Recovery model FULL? Se sim, qual a frequência que vocês fazem backup de log dele?


    Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */

    quinta-feira, 27 de abril de 2017 18:25
  • Ilanocf,

    Eu particularmente não utilizaria o plano de execução mas sim um JOB para realizar este procedimento no dia e hora desejada.


    Pedro Antonio Galvao Junior [MVP | MCC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    terça-feira, 2 de maio de 2017 01:29