Резервное копирование: планирование и реализация


Контрольные точки (Checkpoint)



бет2/27
Дата25.03.2022
өлшемі141,86 Kb.
#136696
1   2   3   4   5   6   7   8   9   ...   27
Байланысты:
2-зертханалық жұмыс ББД

Контрольные точки (Checkpoint)


SQL Server Database Engine выполняет изменения страниц базы данных в памяти (в буферном кэше) и не записывает эти страницы на диск сразу же после каждого изменения. Вместо этого Database Engine периодически создает контрольную точку на каждой базе данных. Именно в контрольной точке он записывает из памяти на диск текущие страницы, измененные в памяти (известные как измененные незафиксированные страницы), а также записывает сведения в журнал транзакций.
Компонент Database Engine поддерживает четыре типа контрольных точек: автоматические, косвенные, ручные и внутренние.

  • Автоматические контрольные точки (Automatic checkpoints). Создаются с помощью системной хранимой процедуры sp_configure, которой передается параметр конфигурации сервера recovery interval:

EXEC sp_configure "recovery interval«,»seconds" **.
В соответствии с верхним пределом времени, указанном в этом параметре, контрольные точки автоматически выдаются в фоновом режиме. Автоматические контрольные точки выполняются до их завершения. Автоматические контрольные точки регулируются в зависимости от числа необработанных записей и от того, обнаруживает ли компонент Database Engine увеличение задержки записи более чем на 20 миллисекунд.

  • Косвенные контрольные точки (Indirect checkpoints). Создаются с помощью инструкции ALTER DATABASE:

ALTER DATABASE … SET TARGET_RECOVERY_TIME
=target_recovery_time { SECONDS | MINUTES }.
Выдаются в фоновом режиме для обеспечения соответствия пользовательскому целевому времени восстановления для конкретной базы данных. Целевое время восстановления по умолчанию равно 0, что приводит к использованию эвристики автоматических контрольных точек в базе данных. Если была использована инструкция ALTER DATABASE для установки TARGET_RECOVERY_TIME в значение > 0, то используется это значение, а не интервал восстановления, указанный для экземпляра сервера.

  • Ручные контрольные точки (Manual checkpoints). Выдаются при выполнении команды Transact-SQL CHECKPOINT:

CHECKPOINT [ checkpoint_duration ]
Ручная контрольная точка срабатывает в текущей базе данных для конкретного соединения. По умолчанию ручная контрольная точка выполняется до ее завершения. Регулирование работает так же, как и для автоматической контрольной точки. При необходимости параметр checkpoint_duration указывает требуемое время в секундах для завершения контрольной точки.

    • Внутренние контрольные точки (Internal checkpoints). Выдаются различными операциями сервера, такими как резервное копирование и создание моментального снимка базы данных, для обеспечения соответствия образа диска текущему состоянию журнала.


    1. Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   27




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет