Share via


RESTORE VERIFYONLY (Transact-SQL)

驗證備份,但不還原它,同時也會檢查備份組是否已完成,整個備份是否可讀取。 不過,RESTORE VERIFYONLY 並不會嘗試驗證備份磁碟區所包含之資料的結構。 Microsoft SQL Server 已增強 RESTORE VERIFYONLY 的功能,可對資料執行額外檢查,藉此提升偵測到錯誤的機率。 目標是盡可能接近實際的還原作業。 如需詳細資訊,請參閱<備註>一節。

如果備份有效,SQL Server Database Engine 會傳回成功的訊息。 

[!附註]

如需引數的描述,請參閱<RESTORE 引數 (Transact-SQL)>。

主題連結圖示 Transact-SQL 語法慣例

語法

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 } = { 'physical_backup_device_name' |
       @physical_backup_device_name_var } 
} 

引數

如需 RESTORE VERIFYONLY 引數的描述,請參閱<RESTORE 引數 (Transact-SQL)>。

一般備註

媒體集或備份組必須包含最起碼的正確資訊,才能夠解譯成 Microsoft Tape Format。 如果沒有包含最起碼的正確資訊,RESTORE VERIFYONLY 會指出備份格式無效,並停止作業。

RESTORE VERIFYONLY 所執行的檢查包括:

  • 備份組是否完整,所有磁碟區是否可讀取。

  • 部分資料庫頁面的標頭欄位,如頁面識別碼 (如同即將寫入資料)。

  • 總和檢查碼 (如果媒體有總和檢查碼)。

  • 檢查目的地裝置的空間是否足夠。

[!附註]

RESTORE VERIFYONLY 無法處理資料庫快照集。 若要在還原作業之前驗證資料庫快照集,您可以執行 DBCC CHECKDB。

安全性

備份作業可以選擇性地指定媒體集的密碼及 (或) 備份組的密碼。 當在媒體集或備份組上定義密碼時,您必須在 RESTORE 陳述式中,指定一個或多個正確的密碼。 這些密碼可以防止他人利用 SQL Server 工具,在未獲授權的情況下,在媒體上執行還原作業及附加備份組。 不過,密碼無法防止使用者利用 BACKUP 陳述式的 FORMAT 選項來覆寫媒體。

安全性注意事項安全性注意事項

這個密碼所提供的保護很弱。 這是為了防止已獲授權或未獲授權的使用者使用 SQL Server 工具進行不正確的還原。 它無法防止透過其他方式或以取代密碼的方式來讀取備份資料。 未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 保護備份的最佳作法是將備份磁帶存放在安全位置,或備份至適當的存取控制清單 (ACL) 所保護的磁碟檔案中。 ACL 應該設在備份建立所在的根目錄下。

權限

從 SQL Server 2008 開始,取得有關備份組或備份裝置的資訊需要 CREATE DATABASE 權限。 如需詳細資訊,請參閱<GRANT 資料庫權限 (Transact-SQL)>。

請參閱

參考

BACKUP (Transact-SQL)

RESTORE REWINDONLY (Transact-SQL)

RESTORE (Transact-SQL)

概念

媒體集、媒體家族與備份組 (SQL Server)

備份記錄與標頭資訊 (SQL Server)