LOG_CHECKPOINT_INTERVAL и LOG_CHECKPOINT_TIMEOUT

dbstalker, 11 декабря

Эти параметры динамические, изменять можно командой ALTER SYSTEM.

LOG_CHECKPOINT_INTERVAL и LOG_CHECKPOINT_TIMEOUT – параметры, управляющие выполнением контрольной точки.

Начиная с версии 8.1, ORACLE изменил интерпретацию параметров инициализации LOG_CHECKPOINT_INTERVAL и LOG_CHECKPOINT_TIMEOUT : раньше эти параметры управляли механизмом интервальных (нормальных) контрольных точек, теперь – инкрементальных.

Параметр LOG_CHECKPOINT_INTERVAL - указывает, сколько нужно записать блоков операционной системы (а, не блоков БД!) в журнал повторного выполнения, чтобы началось выполнение инкрементальной контрольной точки. Иначе говоря, устанавливается размер очереди checkpoint queue.(см. здесь)или указывается сколько должно появиться грязых блоков, чтобы началось выполнение инкрементальной контрольной точки.

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

Значение 0 в обоих случаях запрещает соответствующие механизмы контроля, т.е. отменяет соответствующие ограничения.

Эти параметры нужно использовать аккуратно. Если для настройки используется параметр LOG_CHECKPOINT_INTERVAL, то указанное количество блоков ОС должно быть соразмерным с размером группы журнала транзакций. Если установлен параметр LOG_CHECKPOINT_TIMEOUT, то он не должен принимать маленькие значения для систем с незначительным изменением данных, но и не должен принимать большие значения для систем, где данные изменяются постоянно.

А теперь выдержка из документа www.oracle.com/global/ru/oramag/augsept2003/admin_fast.html

Недокументированная особенность

Параметр инициализации LOG_CHECKPOINT_INTERVAL имеет недокументированную особенность: Oracle неявно корректирует его так, чтобы он не превосходил 90% размера наименьшего журнального файла. Таким образом, когда подходит время для переключения журнала, позиция контрольной точки уже находится в заканчивающемся журнальном файле, и предыдущий журнальный файл уже свободен. Следовательно, даже при минимальном количестве журнальных групп (2) переключение журнала пройдёт без задержек, и ошибки “checkpoint not completed” исключаются. Фактически при выполнении контрольной точки по переключению журнала не делается ничего, никаких операций записи. Контрольная точка по переключению журнала отмечается как завершённая (в alert-файле) после того, как отметка контрольной точки выйдет за пределы заполненного журнального файла вследствие любых других причин, например, параметров инициализации LOG_CHECKPOINT_INTERVAL или LOG_CHECKPOINT_TIMEOUT. Таким образом, большое время между отметками о начале и окончании контрольной точки в alert-файле больше не должно вызывать беспокойства.

Проиллюстрируем на примере. Предположим, имеется два журнальных файла A и B одинакового размера. Когда журнальный файл B оказывается заполненным, позиция контрольной точки уже находится внутри него, не менее чем в 10% от его начала. Таким образом, журнальный файл A свободен и переключиться на него можно без задержек. Когда позиция контрольной точки, последовательно, постепенно продвигаясь, “выйдет” из журнального файла B, в alert-файле появится запись о том, что контрольная точка по переключению журнала завершена.

При переключении журнальных файлов вручную позиция контрольной точки может не успеть выйти из предыдущего журнального файла, как описано. В этом случае инициируется настоящая контрольная точка, и позиция её продвигается вплоть до конца переключаемого журнального файла.

Инкрементальные контрольные точки не фиксируются ни в alert-файле, ни в статистиках DBWR checkpoints, background checkpoints started, background checkpoints completed. Они находят отражение только в статистике DBWR checkpoint buffers written. В alert-файл и вышеуказанные статистики записываются только контрольные точки по переключению журнала и по оператору ALTER SYSTEM CHECKPOINT.

Успехов в труде!

 

Новый комментарий

Я не спамер: введите суму 7+2



 

От авторов блога

О Блоге - прочитай перед началом.

Задать вопрос и получить ответ - уже решено 94 вопросов

Глоссарий - список терминов и сокращений


 
 

Бизнес форум

Последние темы:

Нужна гадалка
20 июля, 1 ответа
Бутель для воды
20 июля, 1 ответа