Published on

February 10, 2025

Comprendre la sauvegarde et la restauration dans SQL Server

En tant qu’administrateur ou développeur SQL Server, il est crucial de comprendre l’importance de la sauvegarde et de la restauration pour maintenir un système de base de données sain et fiable. Dans cet article, nous explorerons les différentes méthodes de sauvegarde et de restauration dans SQL Server et discuterons des scénarios réels où elles peuvent être appliquées.

Types courants de sauvegarde et de restauration dans SQL Server

SQL Server propose plusieurs méthodes de sauvegarde et de restauration de bases de données. Examinons quelques types courants :

Sauvegarde complète

Une sauvegarde complète crée une copie complète de la base de données, y compris toutes les données et les objets. C’est le type de sauvegarde le plus complet et permet une restauration complète de la base de données en cas de panne.

BACKUP DATABASE [NomBaseDeDonnées]
TO DISK = 'C:\Sauvegarde\NomBaseDeDonnées.bak'
WITH INIT;

Sauvegarde différentielle

Une sauvegarde différentielle capture uniquement les modifications apportées depuis la dernière sauvegarde complète. Elle est plus rapide et nécessite moins d’espace de stockage par rapport à une sauvegarde complète. Cependant, elle ne peut être restaurée qu’en conjonction avec la dernière sauvegarde complète.

BACKUP DATABASE [NomBaseDeDonnées]
TO DISK = 'C:\Sauvegarde\NomBaseDeDonnées_diff.bak'
WITH DIFFERENTIAL;

Sauvegarde du journal des transactions

Une sauvegarde du journal des transactions capture les modifications apportées à la base de données depuis la dernière sauvegarde du journal des transactions. Elle permet une récupération à un moment donné et est essentielle pour maintenir l’intégrité des données.

BACKUP LOG [NomBaseDeDonnées]
TO DISK = 'C:\Sauvegarde\NomBaseDeDonnées_log.bak';

Scénarios de sauvegarde et de restauration en temps réel

Explorons quelques scénarios réels où la sauvegarde et la restauration jouent un rôle crucial :

Restauration d’une base de données à un moment donné

En cas de corruption des données ou de suppression accidentelle, il peut être nécessaire de restaurer une base de données à un moment précis. Cela peut être réalisé en restaurant une sauvegarde complète, suivie de sauvegardes du journal des transactions jusqu’au moment souhaité.

RESTORE DATABASE [NomBaseDeDonnées]
FROM DISK = 'C:\Sauvegarde\NomBaseDeDonnées.bak'
WITH NORECOVERY;

RESTORE LOG [NomBaseDeDonnées]
FROM DISK = 'C:\Sauvegarde\NomBaseDeDonnées_log.bak'
WITH NORECOVERY;

-- Répétez la commande de restauration du journal des transactions ci-dessus pour chaque fichier de sauvegarde du journal des transactions

RESTORE DATABASE [NomBaseDeDonnées]
WITH RECOVERY;

Restauration d’une base de données sur un serveur différent

Dans certains cas, il peut être nécessaire de restaurer une base de données sur un serveur différent. Cela peut être réalisé en effectuant une sauvegarde complète de la base de données, en copiant le fichier de sauvegarde sur le serveur cible, puis en le restaurant.

BACKUP DATABASE [NomBaseDeDonnées]
TO DISK = 'C:\Sauvegarde\NomBaseDeDonnées.bak';

-- Copiez le fichier de sauvegarde sur le serveur cible

RESTORE DATABASE [NomBaseDeDonnées]
FROM DISK = 'D:\Sauvegarde\NomBaseDeDonnées.bak'
WITH NORECOVERY;

Récupération d’une table à un moment donné

Parfois, il peut être nécessaire de récupérer une table spécifique à un moment donné. Cela peut être réalisé en restaurant une sauvegarde complète, suivie de sauvegardes du journal des transactions jusqu’au moment souhaité, et en utilisant la clause STOPAT pour spécifier le point de récupération.

RESTORE DATABASE [NomBaseDeDonnées]
FROM DISK = 'C:\Sauvegarde\NomBaseDeDonnées.bak'
WITH NORECOVERY;

RESTORE LOG [NomBaseDeDonnées]
FROM DISK = 'C:\Sauvegarde\NomBaseDeDonnées_log.bak'
WITH NORECOVERY;

-- Répétez la commande de restauration du journal des transactions ci-dessus pour chaque fichier de sauvegarde du journal des transactions

RESTORE DATABASE [NomBaseDeDonnées]
WITH RECOVERY,
STOPAT = '2022-01-01 12:00:00';

Conclusion

La sauvegarde et la restauration sont des composants essentiels pour maintenir un environnement SQL Server fiable et sécurisé. Comprendre les différents types de sauvegardes et les scénarios de restauration peut vous aider à protéger efficacement vos données et à récupérer de tout problème imprévu. Il est important d’effectuer régulièrement des sauvegardes et de tester le processus de restauration pour garantir l’intégrité de vos bases de données.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.