RESTORE Déclarations - VERIFYONLY (Transact-SQL)

S’applique à :SQL ServerAzure SQL Managed Instance

Vérifie la sauvegarde sans la restaurer, et s'assure que le jeu de sauvegarde est complet et que tous les volumes sont lisibles. Cependant, RESTORE VERIFYONLY il ne tente pas de vérifier la structure des données contenues dans les volumes de sauvegarde. Dans Microsoft SQL Server, RESTORE VERIFYONLY il a été amélioré pour effectuer des vérifications supplémentaires des données afin d’augmenter la probabilité de détection d’erreurs. Le but est d'être le plus proche possible d'une opération de restauration réelle. Pour plus d'informations, consultez la section Notes.

Si la sauvegarde est valide, le Moteur de base de données SQL Server retourne un message de réussite.

Notes

Pour les descriptions des arguments, voir RESTORE Arguments (Transact-SQL).

Conventions de la syntaxe Transact-SQL

Syntaxe

RESTORE VERIFYONLY  
FROM <backup_device> [ ,...n ]  
[ WITH    
 {  
   LOADHISTORY   
  
--Restore Operation Option  
 | MOVE 'logical_file_name_in_backup' TO 'operating_system_file_name'   
          [ ,...n ]   
  
--Backup Set Options  
 | FILE = { backup_set_file_number | @backup_set_file_number }   
 | PASSWORD = { password | @password_variable }   
  
--Media Set Options  
 | MEDIANAME = { media_name | @media_name_variable }   
 | MEDIAPASSWORD = { mediapassword | @mediapassword_variable }  
  
--Error Management Options  
 | { CHECKSUM | NO_CHECKSUM }   
 | { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }  
  
--Monitoring Options  
 | STATS [ = percentage ]   
  
--Tape Options  
 | { REWIND | NOREWIND }   
 | { UNLOAD | NOUNLOAD }    
 } [ ,...n ]  
]  
[;]  
  
<backup_device> ::=  
{   
   { logical_backup_device_name |  
      @logical_backup_device_name_var }  
   | { DISK | TAPE | URL } = { 'physical_backup_device_name' |  
       @physical_backup_device_name_var }   
}  
  

Notes

Pour spécifier l’emplacement et le nom de fichier du Stockage Blob Microsoft Azure, utilisez le format URL pris en charge à compter de SQL Server 2012 (11.x) SP1 Cu2. Bien que le stockage Microsoft Azure soit un service, son implémentation est similaire à celle d’un disque ou d’une bande afin d’offrir une expérience de restauration cohérente et fluide pour les trois appareils.

Les arguments

Pour des descriptions des RESTORE VERIFYONLY arguments, voir RESTORE Arguments (Transact-SQL).

Remarques d'ordre général

Le support de sauvegarde ou le jeu de sauvegarde doivent contenir un minimum d'informations correctes pour pouvoir être interprétés sous Microsoft Tape Format. Sinon, RESTORE VERIFYONLY cela s’arrête et indique que le format de la sauvegarde est invalide.

Les contrôles effectués par RESTORE VERIFYONLY :

  • que le jeu de sauvegarde est complet et que tous les volumes sont lisibles ;

  • certains champs d'en-tête des pages de la base de données, tels que l'ID de la page (comme si l'écriture des données allait avoir lieu) ;

  • la somme de contrôle (si elle figure sur le support) ;

  • s'il y a un espace suffisant sur les périphériques de destination.

Notes

RESTORE VERIFYONLY ne fonctionne pas sur un instantané de base de données. Pour vérifier un instantané de base de données avant une opération de restauration, vous pouvez exécuter DBCC CHECKDB.

Notes

Avec les sauvegardes instantanées, RESTORE VERIFYONLY cela confirme l’existence des instantanés dans les emplacements spécifiés dans le fichier de sauvegarde. Les sauvegardes d’instantanés sont une nouvelle fonctionnalité de SQL Server 2016 (13.x). Pour plus d’informations sur la sauvegarde d’instantanés, consultez Sauvegarde d’instantanés de fichiers pour les fichiers de base de données dans Azure.

Sécurité

Une opération de sauvegarde peut éventuellement spécifier des mots de passe pour un support de sauvegarde, un jeu de sauvegarde ou les deux. Lorsqu’un mot de passe est défini sur un jeu de médias ou un jeu de sauvegarde, vous devez spécifier le ou les bons mots de passe dans la RESTORE déclaration. Ces mots de passe empêchent les opérations non autorisées de restauration et d’ajout de jeux de sauvegarde au support à l’aide d’outils SQL Server. Cependant, un mot de passe n’empêche pas la réécriture des médias en utilisant l’option BACKUP FORMAT de la déclaration.

Important

Le niveau de protection de ce mot de passe est faible. Son but est d'éviter que des utilisateurs autorisés ou non autorisés effectuent une restauration incorrecte à l'aide des outils SQL Server. En aucun cas, elle n'empêche la lecture des données de la sauvegarde par d'autres moyens ou le remplacement du mot de passe. Cette fonctionnalité sera supprimée dans une version future de SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement, et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité. La meilleure pratique pour protéger les sauvegardes consiste à stocker des bandes de sauvegarde dans un emplacement sécurisé ou à sauvegarder sur des fichiers de disque protégés par des listes de contrôle d’accès adéquates (ACL). La liste de contrôle d'accès doit être définie à la racine du répertoire dans lequel les sauvegardes sont effectuées.

Autorisations

À partir de SQL Server 2008 (10.0.x), obtenir des informations sur un ensemble de sauvegarde ou un périphérique de sauvegarde nécessite CREATE DATABASE une autorisation. Pour plus d’informations, consultez GRANT Autorisations de base de données (Transact-SQL).

Exemples

L’exemple suivant vérifie la sauvegarde à partir du disque.

RESTORE VERIFYONLY FROM DISK = 'D:\AdventureWorks.bak';
GO

Voir aussi

BACKUP (Transact-SQL)
Jeux de supports, familles de supports et jeux de sauvegarde (SQL Server)
RESTORE REWINDONLY (Transact-SQL)
RESTORE (Transact-SQL)
Historique de sauvegarde et informations d'en-tête (SQL Server)