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

S’applique à :SQL Server

Cet article 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 en utilisant SQL Server Management Studio ou Transact-SQL.

Autorisations

BACKUP

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.

RESTORE

Si la base de données restaurée n'existe pas, l'utilisateur doit posséder CREATE DATABASE autorisations afin de pouvoir exécuter RESTORE. Si la base de données existe, RESTORE autorisations sont accordées par défaut aux membres des rôles de serveur fixe administrateur système 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 accordées aux rôles pour lesquels les informations relatives à l'abonnement sont toujours facilement accessibles au serveur. Étant donné que l'appartenance à un rôle de base de données fixe ne peut être vérifiée que lorsque la base de données est accessible et intacte, ce qui n'est pas toujours le cas lors de l'exécution de RESTORE, les membres du rôle de base de données fixe db_owner ne disposent pas des autorisations RESTORE.

Utiliser SQL Server Management Studio

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é, sélectionnez Effectuer une somme de contrôle avant d'écrire sur le média.

Utiliser Transact-SQL

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, sélectionnez Nouvelle requête.

  3. Pour activer les sommes de contrôle de sauvegarde dans une instruction BACKUP (Transact-SQL), 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 AdventureWorks2022
TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
WITH CHECKSUM;
GO

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, sélectionnez Nouvelle requête.

  3. Pour activer les sommes de contrôle de sauvegarde dans une instruction RESTORE (Transact-SQL), 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 AdventureWorks2022
FROM DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
WITH CHECKSUM;
GO

Avertissement

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 ne comporte pas de sommes de contrôle, l'opération de restauration échoue avec un message indiquant que les sommes de contrôle ne sont pas présentes.