SQL Server a trois modèles de récupération; journalisé simple, complet et en masse. Chaque base de données utilise l'un de ces paramètres.
Les opérations de sauvegarde et de restauration se produisent dans le contexte du modèle de récupération de la base de données
Vous pouvez changer le modèle de récupération d'une base de données en utilisant le ALTER DATABASE
déclaration avec le SET RECOVERY
option.
Les options disponibles lors de l'utilisation de ALTER DATABASE
pour définir le modèle de récupération sont :
SIMPLE
FULL
BULK_LOGGED
Vous aurez besoin de ALTER
autorisations sur la base de données afin d'apporter de telles modifications.
Exemple
Supposons que nous ayons une base de données appelée PetHotel
.
Nous pouvons vérifier son modèle de récupération actuel en interrogeant le sys.databases
vue catalogue :
SELECT
name,
recovery_model_desc
FROM sys.databases
WHERE name = 'PetHotel';
Résultat :
+----------+-----------------------+ | name | recovery_model_desc | |----------+-----------------------| | PetHotel | SIMPLE | +----------+-----------------------+
Le PetHotel
base de données utilise actuellement le modèle de récupération simple.
Passons au modèle de récupération complète :
USE master;
ALTER DATABASE PetHotel
SET RECOVERY FULL;
Terminé.
Vérifions maintenant le résultat :
SELECT
name,
recovery_model_desc
FROM sys.databases
WHERE name = 'PetHotel';
Résultat :
+----------+-----------------------+ | name | recovery_model_desc | |----------+-----------------------| | PetHotel | FULL | +----------+-----------------------+
Le modèle de récupération a été modifié avec succès comme spécifié.
Considérations importantes
Lors du passage du mode de récupération simple à l'un des autres, le basculement ne prend effet qu'après la première sauvegarde des données.
Par conséquent, dès que vous passez du mode de récupération simple au modèle de récupération complète ou en bloc, vous devez effectuer une sauvegarde complète ou différentielle de la base de données pour démarrer la chaîne de journalisation.
Si vous passez à le modèle de récupération simple, assurez-vous de désactiver toutes les tâches planifiées pour la sauvegarde du journal des transactions (le modèle de récupération simple n'utilise pas les sauvegardes du journal).
En outre, le modèle de récupération en bloc est spécifiquement destiné aux opérations en bloc. Si vous passez du modèle de récupération complète au modèle de journalisation en bloc à cette fin, vous devez revenir au mode de récupération complète une fois que vous avez effectué les opérations en bloc.
Après être passé du modèle de récupération avec enregistrement groupé au modèle de récupération complète, veillez à sauvegarder le journal.
Voir Modèles de récupération sur le site Web de Microsoft pour un aperçu de chaque modèle de récupération.