Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Este tópico é relevante apenas para bancos de dados que estejam usando modelos de recuperação completa ou bulk-logged.
Você pode usar um LSN (número de sequência de log) para definir o ponto de recuperação para uma operação de restauração. No entanto, esse é um recurso especializado destinado a fornecedores de ferramentas e provavelmente não é de uso geral.
Visão geral de números de sequência de log
Os LSNs são usados internamente durante uma sequência RESTORE para localizar o ponto no tempo para o qual os dados foram restaurados. Quando um backup é restaurado, os dados são restaurados ao LSN que corresponde ao point-in-time em que o backup foi realizado. O backup diferencial e o backup de log avançam o banco de dados restaurado para uma hora posterior que corresponde a um LSN mais alto. Saiba mais sobre LSNs no Guia de arquitetura e gerenciamento de log de transações do SQL Server.
Observação
Os LSNs são valores do tipo de dados numérico (25,0). Operações aritméticas (por exemplo, adição ou subtração) não são significativas e não devem ser usadas com LSNs.
Exibir LSNs usados por Backup e Restauração
O LSN de um registro de log no qual ocorreu um determinado evento de backup e restauração pode ser visualizado por meio de um ou mais dos seguintes:
Observação
Os LSNs também aparecem em algumas mensagens do log de erros.
Sintaxe de Transact-SQL para restaurar para um LSN
Usando uma instrução RESTORE, é possível parar no LSN ou imediatamente antes, da seguinte maneira:
Use a cláusula WITH STOPATMARK ='lsn:<lsn_number>', em que lsn:<lsnNumber> é uma cadeia de caracteres que especifica que o registro de log que contém o LSN especificado é o ponto de recuperação.
STOPATMARK avança até o LSN e inclui esse registro de log na recuperação.
Use a cláusula WITH STOPBEFOREMARK ='lsn:<lsn_number>', em que lsn:<lsnNumber> é uma cadeia de caracteres que especifica que o registro de log imediatamente anterior ao registro de log que contém o número de LSN especificado é o ponto de recuperação.
O STOPATMARK efetua roll forward para o LSN e exclui o registro de log do roll forward.
Normalmente, uma transação específica é selecionada para ser incluída ou excluída. Embora não seja exigido, na prática, o registro de log especificado é um registro da confirmação de transação.
Exemplos
O exemplo a seguir assume que o banco de dados AdventureWorks foi alterado para usar o modelo de recuperação completa.
RESTORE LOG AdventureWorks FROM DISK = 'c:\adventureworks_log.bak'
WITH STOPATMARK = 'lsn:15000000040000037'
GO
Tarefas Relacionadas
Restaurar um banco de dados até o ponto de falha no modelo de recuperação completa (Transact-SQL)
Restaurar um banco de dados para uma transação marcada (SQL Server Management Studio)
Restaurar um banco de dados do SQL Server até um ponto determinado (modelo de recuperação completa)