配置默认备份校验和(服务器配置选项)
适用于:SQL Server
在实例级别的所有备份和还原操作期间,使用备份校验和默认设置,启用或禁用备份校验和。
若要为单个备份或还原操作配置错误检查,请参阅在备份或还原 (SQL Server) 期间启用或禁用备份校验和。
下表描述了有效值:
值 | 含义 |
---|---|
0 (默认值) |
已禁用 |
1 |
Enabled |
若要为实例层级的所有备份和还原操作启用备份校验和,请运行以下命令:
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
命令的默认值。 可以通过 DBCC TRACEON
语句动态使用跟踪标志 3023,也可以将其用作启动参数。
动态用法
DBCC TRACEON(3023, -1);
BACKUP DATABASE...;
DBCC TRACEOFF(3023, -1);
启动参数用法
将跟踪标志作为启动参数添加到 SQL Server (-T3023
),然后停止并重启 SQL Server 服务。