Sauvegardes complètes de base de données

Une sauvegarde complète de base de données permet de sauvegarder l'intégralité d'une base de données. Ce type de sauvegarde comprend une partie du journal des transactions afin que la sauvegarde complète de la base de données puisse être récupérée. Les sauvegardes complètes de base de données représentent la base de données à l'issue de l'opération de sauvegarde.

[!REMARQUE]

Pour obtenir une vue d'ensemble des divers types de sauvegardes, consultez Sauvegarde selon le mode de récupération simple ou Sauvegarde en mode de récupération complète.

Les sauvegardes de base de données sont faciles à utiliser. Une sauvegarde complète de base de données contient toutes les données de la base de données. Pour une petite base de données dont la sauvegarde peut s'effectuer rapidement, il est recommandé de n'utiliser que des sauvegardes complètes. Cependant, au fur et à mesure que la taille d'une base de données augmente, les sauvegardes complètes nécessitent davantage de temps et d'espace de stockage. Par conséquent, pour les bases de données volumineuses, il est conseillé de compléter les sauvegardes complètes avec des sauvegardes différentielles. Pour plus d'informations, consultez Sauvegardes différentielles de base de données.

[!REMARQUE]

TRUSTWORTHY a la valeur OFF pour une sauvegarde de base de données. Pour plus d'informations sur l'affectation de la valeur ON à TRUSTWORTHY, consultez ALTER DATABASE (Transact-SQL).

Utilisation des sauvegardes de base de données en mode de récupération simple

En mode de récupération simple, après chaque sauvegarde, la base de données est exposée à des pertes de travaux potentielles en cas de sinistre. Le risque de perte de travail augmente après chaque mise à jour, et ce, jusqu'à la sauvegarde complète suivante, après laquelle le risque de perte de travail redevient nul et un nouveau cycle de risque de perte de travail commence.

En mode de récupération simple, le risque de perte de travail augmente au fil du temps entre les sauvegardes. La figure ci-dessous montre le risque de perte de travail pour une stratégie de sauvegarde qui utilise uniquement des sauvegardes complètes de base de données.

Affiche le risque de perte du travail entre les sauvegardes de base de données

Exemple

L'exemple ci-dessous illustre la création d'une sauvegarde complète de base de données à l'aide de WITH FORMAT afin de remplacer les sauvegardes existantes et créer un nouveau support de sauvegarde.

-- Back up the AdventureWorks database to new media set.
BACKUP DATABASE AdventureWorks
    TO DISK = 'Z:\SQLServerBackups\AdventureWorksSimpleRM.bak' 
    WITH FORMAT;
GO

Utilisation des sauvegardes de base de données en mode de récupération complète

Pour les bases de données qui font appel au mode de récupération complète et au mode de récupération utilisant les journaux de transactions, les sauvegardes des journaux de transaction sont nécessaires. La figure ci-dessous montre la stratégie de sauvegarde la moins complexe possible en mode de restauration complète.

Séries de sauvegardes complètes de base de données et de sauvegardes de fichier journal

[!REMARQUE]

Si vous disposez d'au moins deux bases de données en mode de restauration complète qui doivent être logiquement cohérentes, vous devez implémenter des procédures spéciales pour assurer la récupération de ces bases de données. Pour plus d'informations, consultez Utilisation des transactions marquées (mode de sauvegarde complète).

Pour plus d'informations sur la manière de créer des sauvegardes de fichier journal, consultez Utilisation des sauvegardes de journaux de transactions.

Exemple

L'exemple ci-dessous illustre la création d'une sauvegarde complète de base de données à l'aide de WITH FORMAT afin de remplacer les sauvegardes existantes et créer un nouveau support de sauvegarde. Puis, l'exemple sauvegarde le journal des transactions. Dans la réalité, vous seriez amené à effectuer une série de sauvegardes de fichier journal normales. Dans le cadre de cet exemple, l'exemple de base de données AdventureWorks est défini pour utiliser le mode de restauration complète.

USE master;
ALTER DATABASE AdventureWorks SET RECOVERY FULL;
GO
-- Back up the AdventureWorks database to new media set (backup set 1).
BACKUP DATABASE AdventureWorks
  TO DISK = 'Z:\SQLServerBackups\AdventureWorksFullRM.bak' 
  WITH FORMAT;
GO
--Create a routine log backup (backup set 2).
BACKUP LOG AdventureWorks TO DISK = 'Z:\SQLServerBackups\AdventureWorksFullRM.bak';
GO

Création d'une sauvegarde complète de base de données

La création d'une sauvegarde complète s'effectue en une seule opération, généralement exécutée à intervalles réguliers de façon planifiée.

La syntaxe BACKUP nécessaire à la création d'une sauvegarde complète de base de données est la suivante :

BACKUP DATABASE database_name TO backup_device

Pour créer une sauvegarde complète de base de données

Pour planifier des travaux de sauvegarde

Utilisation des sauvegardes différentielles de base de données

Une sauvegarde de base de données peut servir de base différentielle pour des sauvegardes différentielles de base de données. Vous pouvez ainsi compléter les sauvegardes de base de données avec une courte série de sauvegardes différentielles. Pour plus d'informations, consultez Utilisation des sauvegardes différentielles et Sauvegardes différentielles de base de données.

Utilisation d'une sauvegarde complète pour restaurer la base de données

Vous pouvez recréer une base de données dans son intégralité en la restaurant à n'importe quel emplacement, en une seule étape, à partir d’une sauvegarde complète de base de données. La sauvegarde contient une partie suffisante du journal des transactions pour vous permettre de récupérer la base de données à l'issue de l'opération de sauvegarde. Une fois la base de données récupérée, les transactions non validées sont restaurées (rollback). La base de données restaurée retrouve l'état qui était le sien à l'issue de l'opération de restauration, sans les transactions non validées.

L'opération de restauration crée la base de données dans la destination spécifiée. Si la base de données existe déjà dans l'emplacement spécifié, l'opération de restauration remplace la base de données existante. Pour éviter ce remplacement, spécifiez un autre nom pour la base de données restaurée.

Pour plus d'informations, consultez Réalisation d'une restauration de base de données complète (mode de récupération simple) ou Exécution d'une restauration de base de données complète (mode de restauration complète).