locked
Plano de backup falhou RRS feed

  • Pergunta

  • Srs boa noite,

     

    Estou com uma duvida sobre backup,

    meu plano de backup é o seguinte : backup full e backup de log 5 minutos.. >"só para testes mesmo".

    o Job que criei estava sobrescrevendo o mesmo arquivo de log.

    Matei a base de dados, restaurei o backup full, mas, quando subi o backup de log ele me deu erro de LSN.

    Não entendo pelo seguinte fato. Achei que no job o arquivo de log iria incrementando-se, mas, pelo que noto ele sobrescreve.

    Então como faço para ter arquivos de log em uma tarefa agendada para 5 em 5 minutos sem ter esta perda de LSN?

     

    abraços.

     

    quinta-feira, 15 de setembro de 2011 22:26

Respostas

  • Olá Cream3, este erro informa que houve uma quebra de sequência de Backups na sua política.

    O LSN é o Número de Sequência de Log, e é utilizado pela operação de Backup de Log para saber qual a última posição do último Backup para que comece no próximo LSN.

    Deixe-me tentar explicar um pouco melhor:
    Quando você faz um Backup de Log, ele utiliza o número LSN do último Backup para saber por onde começar a salvar os seus dados. Portanto, se a LSN final do "Backup de Log 1" for diferente do LSN inicial do "Backup de Log 2", o SGBD não poderá restaurar o BD a um estado consistente, causando a falha que você relatou acima.

    Por exemplo:

    Backup                         LSN Inicial                LSN Final
    Backup de Log 00:00   000000111              000000554 
    Backup de Log 00:05   000000554              000000955 
    Backup de Log 00:10   000000955              000001500 

    A instrução acima seria uma política com LSN corretos.

    No seu caso, o que pode ter ocorrido é que um backup paralelo tenha sido feito, o que fez com que o LSN final entre dois Backups de Log  ficassem diferentes. Portanto, o que pode ter ocorrido:

    Backup                         LSN Inicial                LSN Final
    Backup de Log 00:00   000000111              000000554 
    Backup de Log 00:05   000000554              000000955 
    Backup Paralelo         000000995            0000001300
    Backup de Log 00:10   000001300              000001500

    Se você não tem o arquivo "Backup Paralelo" na hora da restauração de seus backups, vai existir um erro, pois a sequência ficará quebrada, como abaixo:

    Backup                         LSN Inicial                LSN Final
    Backup de Log 00:00   000000111              000000554 
    Backup de Log 00:05   000000554              000000955 
    Backup de Log 00:10   000001300            000001500  

    Observe que a sequência ficou diferente, causando o erro de LSN. 

    Para corrigir o erro, você não deve executar Backups paralelos no seu Banco de Dados ou deve usar a opção "Copy Only" (Somente Cópia), existente no Management Studio ou o script T-SQL correspondente.

    Espero ter sido claro e capaz de ajudar, e caso tenha alguma informação que não esteja correta, por favor, me corrijam!

     

    Grande abraço!

    sexta-feira, 16 de setembro de 2011 17:17
  • Obrigado,

    li um artigo muito bom, sobre backups.

    No mesmo artigo estava disponibilizado este script a baixo para verificar a sequencia como você mencionou:

    --Exemplo da cadeia de LSN integra,utilizando Backup Full,Differential e Log.

    Backup Full.

    RESTORE HEADERONLY FROM DISK = ‘C:BACKUPNORTHWIND_FULL.BAK’

    Backup Differential.

    RESTORE HEADERONLY FROM DISK = ‘C:BACKUPNORTHWIND_DIFF(1).BAK’

    Backup Log.

    RESTORE HEADERONLY FROM DISK = ‘C:BACKUPNORTHWIND_LOG.TRN’

     


    Hudson l. Santos Graduado DBA Inforium-MG Pós-Gra. DBA CEFET-MG
    sexta-feira, 4 de novembro de 2011 16:00

Todas as Respostas

  • Cream,

     

    Voce pode criar um plano de manutenção que ja fara isso para voce automaticamente, ou então alterar a sua procedure para criar um arquivo de log com nome diferente.... normalmente se utilizada a data com minutos e segundos, fazendo com que seja basicamente impossivel 2 arquivos com o mesmo nome...


    Fabrizzio A. Caputo
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com
    sexta-feira, 16 de setembro de 2011 01:23
    Moderador
  • Olá Cream3, este erro informa que houve uma quebra de sequência de Backups na sua política.

    O LSN é o Número de Sequência de Log, e é utilizado pela operação de Backup de Log para saber qual a última posição do último Backup para que comece no próximo LSN.

    Deixe-me tentar explicar um pouco melhor:
    Quando você faz um Backup de Log, ele utiliza o número LSN do último Backup para saber por onde começar a salvar os seus dados. Portanto, se a LSN final do "Backup de Log 1" for diferente do LSN inicial do "Backup de Log 2", o SGBD não poderá restaurar o BD a um estado consistente, causando a falha que você relatou acima.

    Por exemplo:

    Backup                         LSN Inicial                LSN Final
    Backup de Log 00:00   000000111              000000554 
    Backup de Log 00:05   000000554              000000955 
    Backup de Log 00:10   000000955              000001500 

    A instrução acima seria uma política com LSN corretos.

    No seu caso, o que pode ter ocorrido é que um backup paralelo tenha sido feito, o que fez com que o LSN final entre dois Backups de Log  ficassem diferentes. Portanto, o que pode ter ocorrido:

    Backup                         LSN Inicial                LSN Final
    Backup de Log 00:00   000000111              000000554 
    Backup de Log 00:05   000000554              000000955 
    Backup Paralelo         000000995            0000001300
    Backup de Log 00:10   000001300              000001500

    Se você não tem o arquivo "Backup Paralelo" na hora da restauração de seus backups, vai existir um erro, pois a sequência ficará quebrada, como abaixo:

    Backup                         LSN Inicial                LSN Final
    Backup de Log 00:00   000000111              000000554 
    Backup de Log 00:05   000000554              000000955 
    Backup de Log 00:10   000001300            000001500  

    Observe que a sequência ficou diferente, causando o erro de LSN. 

    Para corrigir o erro, você não deve executar Backups paralelos no seu Banco de Dados ou deve usar a opção "Copy Only" (Somente Cópia), existente no Management Studio ou o script T-SQL correspondente.

    Espero ter sido claro e capaz de ajudar, e caso tenha alguma informação que não esteja correta, por favor, me corrijam!

     

    Grande abraço!

    sexta-feira, 16 de setembro de 2011 17:17
  • Obrigado,

    li um artigo muito bom, sobre backups.

    No mesmo artigo estava disponibilizado este script a baixo para verificar a sequencia como você mencionou:

    --Exemplo da cadeia de LSN integra,utilizando Backup Full,Differential e Log.

    Backup Full.

    RESTORE HEADERONLY FROM DISK = ‘C:BACKUPNORTHWIND_FULL.BAK’

    Backup Differential.

    RESTORE HEADERONLY FROM DISK = ‘C:BACKUPNORTHWIND_DIFF(1).BAK’

    Backup Log.

    RESTORE HEADERONLY FROM DISK = ‘C:BACKUPNORTHWIND_LOG.TRN’

     


    Hudson l. Santos Graduado DBA Inforium-MG Pós-Gra. DBA CEFET-MG
    sexta-feira, 4 de novembro de 2011 16:00
  • Este post foi encerrado por ser considerado um post antigo.

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

    terça-feira, 5 de junho de 2018 17:40
    Moderador