設定備份總和檢查碼預設 (伺服器組態選項)
適用於:SQL Server
在執行個體層級的所有備份及還原作業期間,使用備份總和檢查碼預設設定來啟用或停用備份總和檢查碼。
若要設定個別備份或還原作業的錯誤檢查,請參閱 在備份或還原期間啟用或停用備份總和檢查碼 (SQL Server)。
下表描述有效的值:
值 | 意義 |
---|---|
0 (預設值) |
停用 |
1 |
啟用 |
若要在實例層級啟用所有備份與還原作業的備份總和檢查碼,請執行下列命令:
EXEC sp_configure 'backup checksum default', 1;
RECONFIGURE;
設定會立即生效。
使用方式情節
在未原生公開錯誤管理選項的備份應用程式或公用程式上,您可以使用備份總和檢查碼預設設定來提供這些選項 (CHECKSUM
和 NO_CHECKSUM
)。 當您使用像 SQL Server 記錄傳送或 SQL Server 維護計畫的備份資料庫工作的公用程式時,您也可以使用此選項。 這些公用程式和相關的 Transact-SQL 預存程序不提供在備份期間包含 CHECKSUM
選項的選項。
詳細資訊
如果頁面總和檢查碼驗證在備份作業期間失敗,SQL Server 會停止備份作業,並回報錯誤訊息 3043。 如需錯誤和疑難排解步驟的詳細資訊,請參閱 MSSQLSERVER_3043 的錯誤頁面。
當您在 BACKUP
命令中使用明確的 NO_CHECKSUM
選項時,會覆寫備份總和檢查碼預設伺服器選項。
若要判斷在備份期間是否使用總和檢查碼來保護備份組,請使用下列其中一種方法:
RESTORE HEADERONLY
命令輸出中的HasBackupChecksums
旗標。 例如:RESTORE headeronly FROM disk = 'c:\temp\master.bak'
msdb
資料庫中backupset
系統資料表的has_backup_checksums
資料行。 例如:SELECT has_backup_checksums, database_name, * FROM msdb..backupset
如果使用 CHECKSUM
選項執行備份,還原作業會自動執行驗證,然後顯示錯誤訊息 3183。 如需錯誤和疑難排解步驟的詳細資訊,請參閱 MSSQLSERVER_3183 的錯誤頁面。
SQL Server 2012 及舊版
在 SQL Server 2012 (11.x) 及舊版中,此選項不存在。 您必須使用追蹤旗標 3023 來啟用 CHECKSUM
選項做為 BACKUP
命令的預設值。 追蹤旗標 3023 可以透過 DBCC TRACEON
陳述式動態使用,也可以當作啟動參數使用。
動態使用方式
DBCC TRACEON(3023, -1);
BACKUP DATABASE...;
DBCC TRACEOFF(3023, -1);
啟動參數使用方式
將追蹤旗標新增到 SQL Server 作為啟動參數 (-T3023
),然後停止並重新啟動 SQL Server 服務。