CHECKPOINT (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

Создает контрольную точку вручную в базе данных SQL Server, к которой вы подключены в настоящее время.

Примечание.

Сведения о различных типах контрольных точек баз данных и работе контрольных точек в целом см. в статье Контрольные точки базы данных (SQL Server).

Соглашения о синтаксисе Transact-SQL

Синтаксис

CHECKPOINT [ checkpoint_duration ]  

Аргументы

checkpoint_duration
Задается запрашиваемое количество времени в секундах для завершения ручной контрольной точки. При указании checkpoint_duration SQL Server ядро СУБД пытается выполнить контрольную точку в течение запрошенной длительности. Аргумент checkpoint_duration должен быть выражением типа int и должен быть больше нуля. Если этот параметр опущен, ядро СУБД настраивает длительность контрольной точки, чтобы свести к минимуму влияние производительности на приложения базы данных. Параметр checkpoint_duration является дополнительным параметром.

Факторы, влияющие на длительность операций выполнения контрольных точек

Количество времени, необходимое для операции выполнения контрольной точки, увеличивается с возрастанием количества «грязных» страниц, которые необходимо записать операции. По умолчанию, чтобы свести к минимуму влияние производительности на другие приложения, SQL Server корректирует частоту операций записи, выполняемой операцией контрольной точки. Уменьшение частоты записи увеличивает время, необходимое для завершения операции выполнения контрольной точки. SQL Server использует эту стратегию для контрольной точки вручную, если значение checkpoint_duration не указано в команде CHECKPOINT.

Влияние на производительность использования аргумента checkpoint_duration зависит от количества "грязных" страниц, уровня активности в системе и фактической задаваемой длительности. Например, если контрольная точка обычно завершается в течение 120 секунд, указывая checkpoint_duration 45 секунд, SQL Server будет выделять больше ресурсов контрольной точке, чем будет назначено по умолчанию. В отличие от этого, указание checkpoint_duration 180 секунд приведет к тому, что SQL Server назначает меньше ресурсов, чем будет назначено по умолчанию. В целом меньшее значение аргумента checkpoint_duration увеличивает объем ресурсов, выделяемых контрольной точке, а большее значение аргумента checkpoint_duration уменьшает объем выделяемых ресурсов. SQL Server всегда завершает контрольную точку, если это возможно, и инструкция CHECKPOINT возвращается немедленно после завершения контрольной точки. Следовательно, в некоторых случаях выполнение контрольной точки может завершиться быстрее, чем заданный период времени, или выполняться дольше этого периода.

Безопасность

Разрешения

Разрешения CHECKPOINT по умолчанию предоставляются членам предопределенной роли сервера sysadmin и предопределенных ролей базы данных db_owner и db_backupoperator, и эти разрешения передаваться не могут.

См. также

ALTER DATABASE (Transact-SQL)
Контрольные точки базы данных (SQL Server)
Configure the recovery interval Server Configuration Option
ЗАВЕРШЕНИЕ РАБОТЫ (Transact-SQL)