RESTORE-Anweisungen - VERIFYONLY (Transact-SQL)
Gilt für: SQL Server Azure SQL Managed Instance
Überprüft die Sicherung, stellt sie jedoch nicht wieder her, und überprüft die Vollständigkeit des Sicherungssatzes sowie die Lesbarkeit der gesamten Sicherung. Allerdings versucht RESTORE VERIFYONLY nicht, die Struktur der auf den Sicherungsvolumes befindlichen Daten zu überprüfen. In Microsoft SQL Server wurde RESTORE VERIFYONLY um zusätzliche Prüfungen der Daten erweitert, sodass Fehler mit größerer Wahrscheinlichkeit gefunden werden. Das Ziel liegt darin, einen tatsächlichen Wiederherstellungsvorgang so authentisch wie möglich zu imitieren. Weitere Informationen finden Sie in den Hinweisen.
Wenn die Sicherung gültig ist, gibt die SQL Server-Datenbank-Engine eine Meldung über den Erfolg zurück.
Hinweis
Eine Beschreibung der Argumente finden Sie unter RESTORE-Argumente (Transact-SQL).
Transact-SQL-Syntaxkonventionen
Syntax
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 }
}
Hinweis
URL ist das Format, das verwendet wird, um den Speicherort und den Dateinamen für Microsoft Azure Blob Storage anzugeben und wird ab SQL Server 2012 (11.x) SP1 mit dem kumulativen Update 2 (CU2) unterstützt. Obwohl es sich bei Microsoft Azure Storage um einen Dienst handelt, ist die Implementierung mit einem Datenträger und Band vergleichbar, um für alle drei Geräte eine konsistente und nahtlose Wiederherstellung zu ermöglichen.
Argumente
Eine Beschreibung der RESTORE VERIFYONLY-Argumente finden Sie unter RESTORE-Argumente (Transact-SQL).
Allgemeine Hinweise
Der Mediensatz oder der Sicherungssatz muss ein Minimum an einwandfreien Daten enthalten, damit er als Microsoft Tape Format interpretiert werden kann. Andernfalls wird RESTORE VERIFYONLY angehalten und zeigt an, dass das Format der Sicherung ungültig ist.
Von RESTORE VERIFYONLY werden u. a. folgende Überprüfungen ausgeführt:
Vollständigkeit des Sicherungssatzes und Lesbarkeit aller Volumes.
Richtigkeit einiger Headerfelder der Datenbankseiten, z. B. die Seiten-ID (als ob die Daten geschrieben werden sollten).
Prüfsumme (falls auf dem Medium vorhanden).
Verfügbarkeit von Speicherplatz auf den Zielgeräten.
Hinweis
Die Verwendung von RESTORE VERIFYONLY für eine Datenbankmomentaufnahme ist nicht möglich. Sie können eine Datenbank-Momentaufnahme vor einem Wiederherstellungsvorgang überprüfen, indem Sie DBCC CHECKDB ausführen.
Hinweis
Mit Momentaufnahmesicherungen bestätigt RESTORE VERIFYONLY das Vorhandensein der Momentaufnahmen an den in der Sicherungsdatei angegebenen Speicherorten. Momentaufnahmesicherungen sind ein neues Feature in SQL Server 2016 (13.x). Weitere Informationen zu Momentaufnahmesicherungen finden Sie unter Dateimomentaufnahme-Sicherungen für Datenbankdateien in Azure.
Sicherheit
Bei einem Sicherungsvorgang können optional Kennwörter für einen Mediensatz, einen Sicherungssatz oder für beides angegeben werden. Wurde ein Kennwort für einen Mediensatz oder Sicherungssatz definiert, müssen die richtigen Kennwörter in der RESTORE-Anweisung angegeben werden. Über diese Kennwörter werden nicht autorisierte Wiederherstellungsoptionen und unbefugtes Anfügen von Sicherungssätzen an Medien mithilfe der Tools von SQL Server verhindert. Mit einem Kennwort kann jedoch das Überschreiben eines Mediums mithilfe der Option FORMAT der BACKUP-Anweisung nicht verhindert werden.
Wichtig
Dieses Kennwort bietet also nur unzureichenden Schutz. Es soll vermeiden, dass autorisierte wie nicht autorisierte Benutzer mithilfe von SQL Server-Tools fehlerhafte Wiederherstellungen durchführen. Es verhindert jedoch nicht das Lesen der Sicherungsdaten mit anderen Mitteln oder das Ersetzen des Kennworts. Diese Funktion wird in einer zukünftigen Version von SQL Serverentfernt. Nutzen Sie diese Features bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die dieses Feature zurzeit verwenden. Eine bewährte Methode für den Schutz von Sicherungen ist das Verwahren von Sicherungsbändern an einem sicheren Ort oder das Sichern in Datenträgerdateien, die durch eine adäquate Zugriffssteuerungsliste (Access Control List, ACL) geschützt sind. Die ACLs sollten für den Verzeichnisstamm eingerichtet werden, unter dem die Sicherungen erstellt werden.
Berechtigungen
Ab SQL Server 2008 (10.0.x) benötigen Sie die CREATE DATABASE-Berechtigung, um Informationen zu Sicherungssätzen oder Sicherungsmedien abzurufen. Weitere Informationen finden Sie unter GRANT (Datenbankberechtigungen) (Transact-SQL).
Beispiele
Im folgenden Beispiel wird die Sicherung vom Datenträger verifiziert.
RESTORE VERIFYONLY FROM DISK = 'D:\AdventureWorks.bak';
GO
Weitere Informationen
BACKUP (Transact-SQL)
Mediensätze, Medienfamilien und Sicherungssätze (SQL Server)
RESTORE REWINDONLY (Transact-SQL)
RESTORE (Transact-SQL)
Sicherungsverlauf und Headerinformationen (SQL Server)