Erro: Backup de log de transações possível após recriar automática de LDF

Traduções deste artigo Traduções deste artigo
ID do artigo: 257855 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
BUG #: 57670 (SQLBUG_70)
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Se o arquivo de dados de log (LDF) para um banco de dados não estiver disponível durante a inicialização do SQL Server (por exemplo, se o arquivo tenha sido renomeado ou excluído), o SQL Server 7.0, às vezes, tenta recriar o arquivo LDF automaticamente para garantir a disponibilidade do banco de dados.

Como as informações do arquivo LDF original são perdidas, esse processo interrompe uma seqüência de backups de log de transação existente. Um novo backup completo do banco de dados precisa ser executada para iniciar uma nova seqüência no backups do log de transações.

No entanto, o SQL Server permite que você executar um backup de log de transação aparentemente válido no momento sem aviso que a seqüência de backup é quebrada.

Se forem feitas como um backup inválido e, depois, tentar restaurar esse log de transação, ele falha com a seguinte mensagem:
Servidor: Mensagem 3155, nível 16, estado 1, linha 1
A operação RESTORE não pode continuar porque um ou mais arquivos foram adicionados ou cancelados no banco de dados desde que o conjunto de backup foi criado.

Servidor: Mensagem 3013, nível 16, estado 1, linha 1
Operação de backup ou restauração finalizando de forma anormal.

Como Contornar

Para contornar este problema, siga um destes procedimentos:
  • Certifique-se que os arquivos LDF não são excluídos ou renomeados.

    - ou -
  • Execute um backup completo do banco de dados para iniciar a seqüência de backup de log de transação novamente.

Situação

A Microsoft confirmou que este é um problema no SQL Server 7.0.

Mais Informações

Etapas para reproduzir o problema

  1. Use as instruções a seguir para criar um banco de dados, inserir dados e começar uma série de backup:
    create database test
    go
    
    use test
    go
    create table t (c int)
    go
    insert into t values (1)
    go
    
    backup database test to disk='c:\test_dump.bak' WITH INIT
    go
    insert into t values (2)
    go
    backup log test to disk='c:\test_dump.bak' WITH NOINIT
    go
    
    insert into t values (3)
    go
    
    use master
  2. Use as seguintes etapas para permitir que criar um novo arquivo LDF para o banco de dados na inicialização do SQL Server:
    1. Verifique se nenhum usuário está conectado ao banco de dados.
    2. Pare o serviço do SQL Server.
    3. Renomeie o arquivo test_log.ldf.
    4. Inicie o serviço SQL Server.
  3. Verifique o seguinte tipos de entradas no log de erro do SQL Server para confirmar que um novo arquivo LDF foi criado:
    Arquivo c:\MSSQL7\data\test_log.LDF não existe - não é possível ativar.
    Tentando recriar o arquivo de log primário para teste de banco de dados.
    ...
    Novo f:\MSSQL7\data\test_log.LDF de arquivo de log criado.
  4. Use as instruções a seguir para continuar a cadeia de backup:
    use test
    go
    insert into t values (4)
    go
    backup log test to disk='c:\test_dump.bak' WITH NOINIT
    go


  5. Usar as instruções a seguir para tentar restaurar os backups em um novo banco de dados chamado testrestore:
    RESTORE DATABASE testrestore
       FROM disk='c:\test_dump.bak'
       WITH NORECOVERY, 
       MOVE 'test' TO 'c:\testrestore.mdf', 
       MOVE 'test_log' TO 'c:\testrestore.ldf'
    RESTORE LOG testrestore
       FROM disk='c:\test_dump.bak'
       WITH NORECOVERY,FILE = 2
    RESTORE LOG testrestore
       FROM disk='c:\test_dump.bak'
       WITH FILE = 3, RECOVERY
Neste ponto, você receber a seguinte mensagem de erro:
Servidor: Mensagem 3155, nível 16, estado 1, linha 1
A operação RESTORE não pode continuar porque um ou mais arquivos foram adicionados ou cancelados no banco de dados desde que o conjunto de backup foi criado.

Servidor: Mensagem 3013, nível 16, estado 1, linha 1
Operação de backup ou restauração finalizando de forma anormal.

Propriedades

ID do artigo: 257855 - Última revisão: domingo, 20 de outubro de 2013 - Revisão: 1.2
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 7.0 Standard Edition
Palavras-chave: 
kbnosurvey kbarchive kbmt kbbug kbpending KB257855 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 257855

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com