none
Pacote DTS gerando log... RRS feed

  • Pergunta

  • Boa tarde pessoal,

    Tenho uma dúvida com relação a uma tarefa em minha Package no DTS do Sql Server 2000.

    Uma das tarefas é pegar uma base em ACCESS e importar os registros para uma tabela no sql server. Isto acontece a cada 10 minutos, das 6 as 22h30.
    Pergunto: Todas as vezes que esta tabela for importada, o meu arquivo de log vai crescer também? O que acontece é o estouro do arquivo de log e consequentemente seu crescimento até que o servidor pare por falta de espaço em disco, pois antes, o arquivo de log crescida sem controle. Agora ele vai até 20GB.

    Pensei em fazer um bulk insert destes dados, pois vi em alguns sites que o bulk insert não geraria log.

    Agradeço a ajuda de todos

    Monetto
    terça-feira, 19 de maio de 2009 20:48

Respostas

  • Boa Noite,

    Se você tem a necessidade de importar os dados de 10 em 10 minutos durante o período de 6 a 22:30 você irá fazer 99 importações em um único dia. Acredito que nesse caso seja interessante avaliar o uso de um Linked Server para o arquivo Access, pois, o acesso será em tempo real e sem a necessidade de controlar essas 99 importações (em uma semana são 694).

    Se o Log for um problema, avalie se é possível deixar o Recovery Model como Simple. O Bulk Insert não gera log em termos. Há efeitos colaterais durante as operações de backup. A maioria dos sites comenta que não gera log, mas esquece de comentar que no backup de log após a operação de um bulk insert, as páginas vão para o backup tornando-o muito maior e sem a possibilidade do Restore Point In Time.

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Como validar e-mails no SQL Server
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!569.entry
    Classifique as respostas. O seu feedback é imprescindível
    • Marcado como Resposta Richard Juhasz quinta-feira, 6 de janeiro de 2011 18:20
    quarta-feira, 20 de maio de 2009 00:01
  • Monetto,

    Concordo com o Gustavo.

    A utilização de um linked Server entre o SQL Server e o Access é uma ótima prática para transferência de dados, ainda mais por se tratar de um recurso específico para acesso remoto entre bases de dados distintas, neste caso, você poderia configurar um JOB para fazer a transferência dos dados em horários agendados ou então você mesmo fazer o acesso em tempo real ao Access.

    Se o problema do crescimento de log, toda e qualquer operação(transação) realizada, processada e concluída que envolva o SQL Server vai gerar log, isso é fato, em relação a possíveis procedimento que podemos executar para tentar evitar ou até mesmo a mudança do modelo de recuperação do banco de dados o Gustavo já forneceu informações preciosas. No seu caso eu sugiro utilizar o recovery model simple.


    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    • Marcado como Resposta Richard Juhasz quinta-feira, 6 de janeiro de 2011 18:20
    quarta-feira, 20 de maio de 2009 11:41
    Moderador

Todas as Respostas

  • Boa Noite,

    Se você tem a necessidade de importar os dados de 10 em 10 minutos durante o período de 6 a 22:30 você irá fazer 99 importações em um único dia. Acredito que nesse caso seja interessante avaliar o uso de um Linked Server para o arquivo Access, pois, o acesso será em tempo real e sem a necessidade de controlar essas 99 importações (em uma semana são 694).

    Se o Log for um problema, avalie se é possível deixar o Recovery Model como Simple. O Bulk Insert não gera log em termos. Há efeitos colaterais durante as operações de backup. A maioria dos sites comenta que não gera log, mas esquece de comentar que no backup de log após a operação de um bulk insert, as páginas vão para o backup tornando-o muito maior e sem a possibilidade do Restore Point In Time.

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Como validar e-mails no SQL Server
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!569.entry
    Classifique as respostas. O seu feedback é imprescindível
    • Marcado como Resposta Richard Juhasz quinta-feira, 6 de janeiro de 2011 18:20
    quarta-feira, 20 de maio de 2009 00:01
  • Monetto,

    Concordo com o Gustavo.

    A utilização de um linked Server entre o SQL Server e o Access é uma ótima prática para transferência de dados, ainda mais por se tratar de um recurso específico para acesso remoto entre bases de dados distintas, neste caso, você poderia configurar um JOB para fazer a transferência dos dados em horários agendados ou então você mesmo fazer o acesso em tempo real ao Access.

    Se o problema do crescimento de log, toda e qualquer operação(transação) realizada, processada e concluída que envolva o SQL Server vai gerar log, isso é fato, em relação a possíveis procedimento que podemos executar para tentar evitar ou até mesmo a mudança do modelo de recuperação do banco de dados o Gustavo já forneceu informações preciosas. No seu caso eu sugiro utilizar o recovery model simple.


    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    • Marcado como Resposta Richard Juhasz quinta-feira, 6 de janeiro de 2011 18:20
    quarta-feira, 20 de maio de 2009 11:41
    Moderador