Activer ou désactiver des sommes de contrôle de sauvegarde au cours d'opérations de sauvegarde ou de restauration (SQL Server)

Cette rubrique décrit comment activer ou désactiver les sommes de contrôle de sauvegarde lorsque vous sauvegardez ou restaurez une base de données dans SQL Server 2012 à l'aide de SQL Server Management Studio ou de Transact-SQL.

Dans cette rubrique

  • Avant de commencer :

    Sécurité

  • Pour activer ou désactiver les sommes de contrôle de sauvegarde, utilisez :

    SQL Server Management Studio

    Transact-SQL

Avant de commencer

Sécurité

Autorisations

  • BACKUP
    Les autorisations BACKUP DATABASE et BACKUP LOG sont définies 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 pour le fichier physique de l'unité de sauvegarde peuvent n'apparaître que lorsque la ressource physique est sollicitée au moment de la sauvegarde ou de la restauration.

  • RESTORE
    Si la base de données restaurée n'existe pas, l'utilisateur doit posséder les autorisations CREATE DATABASE afin de pouvoir exécuter RESTORE. Si la base de données existe, les autorisations RESTORE reviennent par défaut aux membres des rôles serveur fixes sysadmin et dbcreator et au propriétaire (dbo) de la base de données (pour l'option FROM DATABASE_SNAPSHOT, la base de données existe toujours).

    Les autorisations RESTORE sont attribuées aux rôles dont les informations d'appartenance sont toujours immédiatement accessibles à partir du serveur. Étant donné que l'appartenance au rôle de base de données fixe ne peut être contrôlée que lorsque la base de données est accessible et non endommagée, ce qui n'est pas toujours le cas lorsque RESTORE est exécuté, les membres du rôle de base de données fixe db_owner ne détiennent pas d'autorisations RESTORE.

Icône de flèche utilisée avec le lien Retour en haut[Top]

Utilisation de SQL Server Management Studio

Pour activer ou désactiver les sommes de contrôle pendant une opération de sauvegarde

  1. Suivez les étapes pour créer une sauvegarde de base de données.

  2. Sur la page Options, dans la section Fiabilité, cliquez sur Effectuer une somme de contrôle avant d'écrire sur le support.

Icône de flèche utilisée avec le lien Retour en haut[Top]

Utilisation de Transact-SQL

Pour activer ou désactiver la somme de contrôle de sauvegarde pour une opération de sauvegarde

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

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Pour activer les sommes de contrôle de sauvegarde dans une instruction BACKUP, spécifiez l'option WITH CHECKSUM. Pour désactiver les sommes de contrôle de sauvegarde, spécifiez l'option WITH NO_CHECKSUM. Ceci est le comportement par défaut, sauf pour une sauvegarde compressée. L'exemple suivant spécifie que les sommes de contrôle doivent être effectuées.

BACKUP DATABASE AdventureWorks2012 
 TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
   WITH CHECKSUM;
GO

Pour activer ou désactiver la somme de contrôle de sauvegarde pour une opération de restauration

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

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Pour activer les sommes de contrôle de sauvegarde dans une instruction RESTORE, spécifiez l'option WITH CHECKSUM. Ceci est le comportement par défaut pour une sauvegarde compressée. Pour désactiver les sommes de contrôle de sauvegarde, spécifiez l'option WITH NO_CHECKSUM. Ceci est le comportement par défaut, sauf pour une sauvegarde compressée. L'exemple suivant spécifie que les sommes de contrôle de sauvegarde doivent être effectuées.

RESTORE DATABASE AdventureWorks2012 
 FROM DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
   WITH CHECKSUM;
GO
AttentionAttention

Si vous spécifiez explicitement CHECKSUM pour une opération de restauration et que la sauvegarde contient des sommes de contrôle de sauvegarde, ces sommes de contrôle de sauvegarde ainsi que les sommes de contrôle de page sont vérifiées, comme dans le cas par défaut. Toutefois, si le jeu de sauvegarde manque de sommes de contrôle de sauvegarde, l'opération de restauration se solde par un échec et l'affichage d'un message indiquant l'absence des sommes de contrôle.

Icône de flèche utilisée avec le lien Retour en haut[Top]

Voir aussi

Référence

RESTORE FILELISTONLY (Transact-SQL)

RESTORE HEADERONLY (Transact-SQL)

RESTORE LABELONLY (Transact-SQL)

RESTORE VERIFYONLY (Transact-SQL)

BACKUP (Transact-SQL)

backupset (Transact-SQL)

Arguments RESTORE (Transact-SQL)

Concepts

Erreurs de support possibles pendant les opérations de sauvegarde et de restauration (SQL Server)

Spécifier si une opération de sauvegarde ou de restauration continue ou s'arrête après la survenue d'une erreur (SQL Server)