Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Du 22 au 24 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. SQL Server 2019
  3. Restauration
Extrait - SQL Server 2019 Apprendre à administrer une base de données transactionnelle avec SQL Server Management Studio
Extraits du livre
SQL Server 2019 Apprendre à administrer une base de données transactionnelle avec SQL Server Management Studio
5 avis
Revenir à la page d'achat du livre

Restauration

Vue d’ensemble du processus de restauration

La restauration représente l’opération inverse d’une sauvegarde. Le processus de restauration peut également être utilisé pour réaliser des migrations de bases de données utilisateurs. 

Cette opération peut être réalisée soit à l’aide des commandes Transact SQL (RESTORE) soit par l’intermédiaire de la console d’administration SQL Server Management Studio. Quelle que soit la base à restaurer, il est indispensable d’installer SQL Server pour remonter les données sur la machine.

Le simple fait de replacer les fichiers constituant les données et le journal ne constitue en aucun cas une restauration, puisque SQL Server n’est pas capable d’accéder à ces fichiers tant qu’ils ne sont pas référencés dans la base Master.

1. La restauration automatique

Ce processus intervient lors de chaque démarrage du serveur. Il s’assure que la dernière opération inscrite dans le journal est un point de synchronisation. Si ce n’est pas le cas, alors le journal est relu depuis le dernier point de synchronisation et toutes les transactions validées sont rejouées tandis que toutes les autres modifications sont annulées. Cette opération est nécessaire afin de garantir la cohérence des données.

2. Opérations exécutées automatiquement par SQL Server

SQL Server réalise automatiquement un certain nombre d’opérations afin d’accélérer le processus de restauration et de réduire au maximum le temps d’indisponibilité du serveur.

Le contrôle de sécurité

L’intérêt...

Restauration des sauvegardes

Suivant la sauvegarde effectuée, la méthode de restauration va être légèrement différente.

1. L’instruction RESTORE

En mode Transact SQL, c’est l’instruction RESTORE qui permet de remonter une sauvegarde faite par SQL Server.

Exemple

Dans l’exemple présenté ci-dessous une restauration complète de la base Gescom est faite à partir des sauvegardes présentes dans l’unité de sauvegarde testSQL. L’option WITH REPLACE est précisée afin de confirmer l’écrasement de la base existante.

USE Master ; 
go 
RESTORE DATABASE GESCOM FROM testSQL WITH FILE = 1, NOUNLOAD, REPLACE, 
STATS = 5 
GO 

La commande RESTORE doit toujours être lancée depuis la base Master.

Pour restaurer le journal des transactions, il est nécessaire d’utiliser l’instruction RESTORE LOG qui possède un paramétrage similaire à celui de RESTORE DATABASE. 

Sur une base de données endommagée, la restauration permet de retrouver un ensemble cohérent de données. L’étape de restauration se charge de recréer automatiquement les fichiers et les objets de la base, sans pour autant qu’il soit nécessaire de supprimer la base de données auparavant.

2. Les options de l’instruction RESTORE

Il existe de nombreuses options sur l’instruction RESTORE, seules certaines sont détaillées ici.

Tout d’abord lorsque la restauration utilise plusieurs sauvegardes (une complète puis une différentielle et enfin celle des journaux de transactions) il est important que SQL Server ne rende pas la base accessible aux utilisateurs tant que la dernière restauration n’a pas été effectuée. Pour cela, l’instruction RESTORE propose les options RECOVERY et NORECOVERY.

RECOVERY

C’est l’option pas défaut qui est utilisée par SQL Server. Avec cette option, à la fin de la restauration, SQL Server passe en revue le journal des transactions afin d’annuler toutes les transactions non validées depuis le dernier point de synchronisation et de confirmer toutes les transactions validées. Une fois ces opérations terminées, la base est accessible par les utilisateurs....

Exercice : télécharger et restaurer la base exemple AdventureWorks

1. Énoncé

Télécharger la base exemple AdventureWorks depuis le site de Microsoft.

Restaurer cette base sur l’instance par défaut.

2. Corrigé

La base est disponible à cette adresse au moment de l’écriture de cet ouvrage : https://docs.microsoft.com/en-us/sql/samples/adventureworks-install-configure?view=sql-server-ver15

Dans le cas où cette adresse n’existerait plus, le site de téléchargement se trouve facilement avec un moteur de recherche.

La base OLTP AdventureWorks existe en plusieurs versions, la dernière étant Adventure-Works2017 et est fournie dans un fichier .bak.

Lors de la restauration, il se peut que les dossiers sources de la base n’existent pas sur votre serveur. Il faudra donc utiliser l’option MOVE…TO :

restore database adventureworks2017 
from disk='c:\tp\adventureworks2017.bak'  
with move 'AdventureWorks2017' to 'c:\tp\AdventureWorks2017.mdf', 
    move 'AdventureWorks2017_log' to 'c:\tp\AdventureWorks2017.ldf'