Récupération d'un numéro séquentiel dans le journal

Cette rubrique s'applique uniquement aux bases de données employant le mode de récupération complète ou le mode de récupération utilisant les journaux de transactions.

SQL Server 2005 et versions ultérieures vous permettent d'utiliser un numéro séquentiel dans le journal pour définir le point de récupération d'une opération de restauration. Cette fonctionnalité est spécialement conçue pour les fournisseurs d'outils et ne devrait pas être nécessaire dans la majorité des cas.

[!REMARQUE]

Pour plus d'informations sur les conditions requises pour la restauration à un point de récupération spécifique, consultez Restauration d'une base de données vers un point dans une sauvegarde.

Syntaxe Transact-SQL relative à la restauration d'après un NSE

Grâce à l'instruction RESTORE, vous pouvez vous arrêter à un NSE ou immédiatement avant ce point de la façon suivante :

  • en utilisant la clause WITH STOPATMARK ='lsn:<lsn_number>' où Isn:<lsnNumber> correspond à une chaîne précisant que l'enregistrement du journal qui contient le NSE précisé équivaut au point de récupération.

    STOPATMARK permet la restauration par progression jusqu'au NSE et inclut l'enregistrement correspondant issu du journal, dans la restauration.

  • Utilisez la clause WITH STOPBEFOREMARK ='lsn:<lsn_number>', où lsn:<lsnNumber> correspond à une chaîne précisant que l'entrée se trouvant dans le journal immédiatement avant celle qui contient le NSE précisé équivaut au point de récupération.

    STOPBEFOREMARK permet la restauration par progression jusqu'au NSE mais exclut l'enregistrement correspondant, se trouvant dans le journal, de la restauration par progression.

De façon générale, une transaction donnée est sélectionnée dans le but d'être incluse ou exclue. Dans la pratique, et ce même s'il n'est pas requis, l'enregistrement spécifié dans le journal correspond à un enregistrement de validation de transaction.

Pour plus d'informations sur l'utilisation des NSE, consultez Numéros séquentiels dans le journal et planification de la restauration.

Pour plus d'informations sur les restaurations limitées dans le temps, consultez Restauration d'une base de données vers un point dans une sauvegarde.

Exemples

L'exemple suivante suppose que la base de données AdventureWorks a été modifiée afin d'utiliser le mode de récupération complète.

RESTORE LOG AdventureWorks FROM DISK = 'c:\adventureworks_log.bak' 
WITH STOPATMARK = 'lsn:15000000040000037'
GO