Контрольная сумма резервной копии: значение по умолчанию

Применимо к:SQL Server

Используйте параметр по умолчанию резервной контрольной суммы, чтобы включить или отключить контрольную сумму резервного копирования во время всех операций резервного копирования и восстановления на уровне экземпляра.

Чтобы настроить проверку на наличие ошибок для отдельных операций резервного копирования или восстановления, см. раздел Включение или отключение контрольных сумм резервных копий во время резервного копирования или восстановления (SQL Server).

В следующей таблице описаны допустимые значения:

Значение Значение
0 Отключено. Это параметр по умолчанию.
1 Активировано

Изменение параметров вступает в силу немедленно.

Сценарии использования

Вы можете использовать параметр по умолчанию резервной контрольной суммы для предоставления параметров управления ошибками (CHECKSUM и NO_CHECKSUM) при использовании приложений или служебных программ резервного копирования, которые изначально не предоставляют эти параметры. Этот параметр также можно использовать при использовании таких служебных программ, как доставка журналов SQL Server или задача резервного копирования базы данных из SQL Server планов обслуживания. Эти служебные программы и связанные с ними хранимые процедуры Transact-SQL не предоставляют возможность включить параметр во время резервного CHECKSUM копирования.

Дополнительные сведения

Если во время операции резервного копирования проверка контрольной суммы страницы завершается сбоем, SQL Server останавливает операцию резервного копирования и сообщает об ошибке 3043. Дополнительные сведения об ошибках и действиях по устранению неполадок см. на странице ошибок для MSSQLSERVER_3043.

При использовании явного NO_CHECKSUM параметра в команде BACKUP параметр сервера резервной контрольной суммы по умолчанию переопределяется.

Чтобы определить, использовалась ли контрольная сумма во время резервного копирования для защиты резервного набора данных, используйте один из следующих методов:

  • Флаг HasBackupChecksums в выходных RESTORE HEADERONLY данных команды. Пример:

    RESTORE headeronly FROM disk = 'c:\temp\master.bak'
    
  • Столбец has_backup_checksums в системной backupset таблице базы msdb данных. Пример:

    SELECT has_backup_checksums, database_name, *
    FROM msdb..backupset
    

Если резервное копирование выполняется с помощью CHECKSUM параметра , операция восстановления автоматически выполняет проверку и выводит сообщение об ошибке 3183. Дополнительные сведения об ошибках и действиях по устранению неполадок см. на странице ошибок для MSSQLSERVER_3183.

SQL Server 2012 и более ранних версий

В SQL Server 2012 (11.x) и более ранних версиях этот параметр не существует. Чтобы включить CHECKSUM параметр по умолчанию для BACKUP команды, необходимо использовать флаг трассировки 3023. Флаг трассировки 3023 можно использовать динамически с помощью DBCC TRACEON инструкции или как параметр запуска.

Динамическое использование

DBCC TRACEON(3023,-1);
BACKUP DATABASE...;
DBCC TRACEOFF(3023,-1);

Использование параметра запуска

Добавьте флаг трассировки в качестве параметра запуска в SQL Server (-T3023), а затем остановите и перезапустите службу SQL Server.

См. также раздел