Définir la date d’expiration d’une sauvegarde (SQL Server)

S’applique à :SQL Server

Cet article explique comment définir la date d’expiration d’une sauvegarde dans SQL Server, à l’aide de SQL Server Management Studio ou de Transact-SQL.

Si vous ajoutez plusieurs sauvegardes de base de données dans un seul fichier, vous pouvez utiliser la date d’expiration pour éviter de remplacer les sauvegardes avant cette date. Pour plus d’informations, consultez Définir les options de Media.

Autorisations

Les autorisations BACKUP DATABASE et BACKUP LOG reviennent par défaut aux membres du rôle serveur fixe sysadmin et des rôles de base de données fixes db_owner et db_backupoperator.

Des problèmes de propriété et d'autorisations sur le fichier physique de l'unité de sauvegarde sont susceptibles de perturber une opération de sauvegarde. SQL Server doit être en mesure de lire et d'écrire sur l'unité ; le compte sous lequel le service SQL Server s'exécute doit avoir des autorisations d'écriture. Toutefois, sp_addumpdevice, qui ajoute une entrée pour une unité de sauvegarde dans les tables système, ne vérifie pas les autorisations d’accès au fichier. De tels problèmes sur le fichier physique du dispositif de sauvegarde peuvent ne pas apparaître jusqu'à ce que la ressource physique soit accédée lors de la tentative de sauvegarde ou de restauration.

Utiliser SQL Server Management Studio

  1. Après vous être connecté à l'instance appropriée du moteur de base de données SQL Server, dans l'Explorateur d'objets, sélectionnez le nom du serveur pour développer l'arborescence du serveur.

  2. Développez Bases de donnéespuis, selon la base de données, sélectionnez une base de données utilisateur ou développez Bases de données système et sélectionnez une base de données système.

  3. Cliquez avec le bouton droit sur la base de données, pointez sur Tâches, puis cliquez sur Sauvegarder. La boîte de dialogue Sauvegarder la base de données s’affiche.

  4. Dans la page Général , pour l'option Expiration du jeu de sauvegarde, spécifiez une date d'expiration indiquant à quel moment la sauvegarde définie peut être remplacée par une autre sauvegarde :

    • Pour que le jeu de sauvegarde expire au bout d’un nombre de jours spécifique, cliquez sur Après (option par défaut) et entrez le nombre de jours souhaité pour l’expiration du jeu après sa création. Cette valeur doit être comprise entre 0 et 99999 jours ; une valeur de 0 jour signifie que le jeu de sauvegarde n'expirera jamais.

      La valeur par défaut est définie dans l’option Délai de rétention par défaut du support de sauvegarde (jours) de la boîte de dialogue Propriétés du serveur (pageParamètres de base de données ). Pour y accéder, cliquez avec le bouton droit sur le nom du serveur dans l’Explorateur d’objets et sélectionnez propriétés. Ensuite, sélectionnez la page Paramètres de base de données .

    • Pour que le jeu de sauvegarde expire à une date spécifique, sélectionnez Activé et saisissez la date d'expiration du set.

Utiliser Transact-SQL

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d’outils standard, sélectionnez Nouvelle requête.

  3. Dans l'instruction BACKUP (Transact-SQL), spécifiez l'option EXPIREDATE ou RETAINDAYS pour déterminer quand le moteur de base de données SQL Server peut écraser la sauvegarde. Si aucune de ces options n'est spécifiée, la date d'expiration est déterminée par le paramètre de configuration serveur media retention (rétention du support). Cet exemple utilise l'option EXPIREDATE pour spécifier une date d'expiration fixée au 1er juin 2024 (20240601).

    USE AdventureWorks2022;
    GO
    
    BACKUP DATABASE AdventureWorks2022
    TO DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak'
    WITH EXPIREDATE = '20240601';
    GO