Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cette rubrique s’applique uniquement aux bases de données qui utilisent les modèles de récupération complètes ou journalisées en bloc.
Vous pouvez utiliser un numéro de séquence de journal (LSN) pour définir le point de récupération d’une opération de restauration. Toutefois, il s’agit d’une fonctionnalité spécialisée destinée aux fournisseurs d’outils et qui est peu susceptible d’être généralement utile.
Vue d’ensemble des numéros de séquence de journaux de logs
Les numéros LSN sont utilisés en interne pendant une séquence RESTORE pour suivre le point dans le temps dans lequel les données ont été restaurées. Lorsqu’une sauvegarde est restaurée, les données sont restaurées sur le LSN correspondant au moment où la sauvegarde a été effectuée. Les sauvegardes différentielles et de journaux avancent la base de données restaurée à une date ultérieure, ce qui correspond à un LSN supérieur.
Chaque enregistrement du journal des transactions est identifié de manière unique par un numéro de séquence de journaux (LSN). Les LSN sont classés de telle sorte que si LSN2 est supérieur à LSN1, la modification décrite par l’enregistrement de journal référencé par LSN2 s’est produite après la modification décrite par le LSN de l’enregistrement de journal.
Le LSN d’un enregistrement de journal auquel un événement significatif s’est produit peut être utile pour construire des séquences de restauration correctes. Étant donné que les LSN sont classés, ils peuvent être comparés pour l’égalité et l’inégalité (autrement dit, <, >, =, <=, >=). Ces comparaisons sont utiles lors de la construction de séquences de restauration.
Remarque
Les LSN sont des valeurs de type de données numeric(25,0). Les opérations arithmétiques (par exemple, l’ajout ou la soustraction) ne sont pas significatives et ne doivent pas être utilisées avec des réseaux LSN.
Consultation des LSN utilisés pour la sauvegarde et la restauration
Le LSN d’un enregistrement de journal auquel un événement de sauvegarde et de restauration donné s’est produit peut être consulté à l’aide d’un ou plusieurs des éléments suivants :
Remarque
LSN apparaissent également dans certains textes de message.
Syntaxe Transact-SQL pour la réinitialisation à un LSN
À l’aide d’une instruction RESTORE , vous pouvez vous arrêter à ou immédiatement avant le LSN, comme suit :
Utilisez la clause WITH STOPATMARK ='lsn :<lsn_number>', où lsn :lsn :<lsnNumber> est une chaîne qui spécifie que l’enregistrement du journal qui contient le LSN spécifié est le point de récupération.
STOPATMARK avance jusqu'au LSN et inclut cet enregistrement de journal dans l'avancement.
Utilisez la clause WITH STOPBEFOREMARK ='lsn :<lsn_number>', où lsn :lsn :<lsnNumber> est une chaîne qui spécifie que l’enregistrement du journal immédiatement avant l’enregistrement du journal qui contient le numéro LSN spécifié est le point de récupération.
STOPBEFOREMARK est transféré vers le LSN et exclut cet enregistrement de journal de la restauration.
En règle générale, une transaction spécifique est sélectionnée pour être incluse ou exclue. Bien qu’il ne soit pas obligatoire, dans la pratique, l’enregistrement de journal spécifié est un enregistrement de validation de transaction.
Exemples
L’exemple suivant suppose que la AdventureWorks base de données a été modifiée pour utiliser le modèle de récupération complète.
RESTORE LOG AdventureWorks FROM DISK = 'c:\adventureworks_log.bak'
WITH STOPATMARK = 'lsn:15000000040000037'
GO
Tâches associées
Restaurer une sauvegarde de base de données (SQL Server Management Studio)
Restaurer une sauvegarde de journal des transactions (SQL Server)
Restaurer une base de données dans une transaction marquée (SQL Server Management Studio)
Restaurer une base de données SQL Server à un point dans le temps (modèle de récupération complète)
Voir aussi
Appliquer des sauvegardes de journal des transactions (SQL Server)
Journal des transactions (SQL Server)
RESTORE (Transact-SQL)