共用方式為


指定在發生錯誤後備份或還原作業應該繼續還是停止 (SQL Server)

此主題描述如何使用 SQL Server Management Studio 或 Transact-SQL,指定在 SQL Server 2012 發生錯誤後,備份或還原作業應該繼續還是停止。

本主題內容

  • 開始之前:

    安全性

  • 若要使用下列項目,指定在發生錯誤後備份或還原作業應該繼續還是停止:

    SQL Server Management Studio

    Transact-SQL

開始之前

安全性

權限

  • BACKUP
    BACKUP DATABASE 和 BACKUP LOG 權限預設為系統管理員 (sysadmin) 固定伺服器角色以及 db_ownerdb_backupoperator 固定資料庫角色的成員。

    備份裝置實體檔案的擁有權和權限問題可能會干擾備份作業。 SQL Server 必須能夠讀取和寫入裝置;執行 SQL Server 服務的帳戶必須具備寫入權限。 不過,在系統資料表中加入備份裝置項目的 sp_addumpdevice 並不會檢查檔案存取權限。 當您嘗試備份或還原時,存取實體資源之前不一定會出現備份裝置實體檔案的這些問題。

  • RESTORE
    如果還原的資料庫不存在,使用者必須有 CREATE DATABASE 權限,才能執行 RESTORE。 如果資料庫存在,RESTORE 權限預設為系統管理員 (sysadmin)資料庫建立者 (dbcreator) 固定伺服器角色的成員以及資料庫的擁有者 (dbo) (對 FROM DATABASE_SNAPSHOT 選項而言,資料庫一律存在)。

    RESTORE 權限提供給伺服器隨時可以取得其成員資格資訊的角色。 由於資料庫必須是可存取且未損毀,才能夠檢查固定資料庫角色成員資格,但執行 RESTORE 時未必如此,因此,db_owner 固定資料庫角色的成員並沒有 RESTORE 權限。

搭配回到頁首連結使用的箭頭圖示[Top]

使用 SQL Server Management Studio

若要指定在發生錯誤後備份應該繼續還是停止

  1. 請依照<建立資料庫備份>的步驟執行。

  2. [選項] 頁面的 [可靠性] 區段中,按一下 [寫入媒體之前執行總和檢查碼][發生錯誤時繼續]

搭配回到頁首連結使用的箭頭圖示[Top]

使用 Transact-SQL

若要指定在發生錯誤後備份作業應該繼續還是停止

  1. 連接到 Database Engine。

  2. 在標準列中,按一下 [新增查詢]

  3. BACKUP 陳述式中,指定 CONTINUE_AFTER_ERROR 選項以繼續,或指定 STOP_ON_ERROR 選項以停止。 預設行為是在發生錯誤後停止。 此範例指示備份作業儘管發生錯誤時仍繼續進行。

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

若要指定在發生錯誤後還原作業應該繼續還是停止

  1. 連接到 Database Engine。

  2. 在標準列中,按一下 [新增查詢]

  3. RESTORE 陳述式中,指定 CONTINUE_AFTER_ERROR 選項以繼續,或指定 STOP_ON_ERROR 選項以停止。 預設行為是在發生錯誤後停止。 此範例指示還原作業儘管發生錯誤時仍繼續進行。

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

搭配回到頁首連結使用的箭頭圖示[Top]

請參閱

參考

RESTORE FILELISTONLY (Transact-SQL)

RESTORE HEADERONLY (Transact-SQL)

RESTORE LABELONLY (Transact-SQL)

RESTORE VERIFYONLY (Transact-SQL)

BACKUP (Transact-SQL)

backupset (Transact-SQL)

RESTORE 引數 (Transact-SQL)

概念

在備份和還原期間可能的媒體錯誤 (SQL Server)

在備份或還原期間啟用或停用備份總和檢查碼 (SQL Server)