20
Восстановление страниц
LSN
восстановление испорченных страниц и страниц,
измененных после точки сдвига
точка сдвига — наиболее поздняя копия из инкрементальной цепочки,
соответствующая прошлому состоянию каталога данных экземпляра
FULL
Δ
2
целевая
копия
точка
сдвига
линия времени 1
линия времени 2
страницы, измененные
в этом диапазоне LSN,
не отличаются от целевой копии
Δ
1
В режиме LSN утилита пытается найти в инкрементальной цепочке
целевой резервной копии наиболее позднюю копию, соответствующую
какому-либо состоянию каталога данных экземпляра в прошлом.
Момент завершения создания этой копии называется точкой сдвига
(Shift LSN) и принадлежит некоторой линии времени. Точка сдвига
важна тем, что страницы экземпляра с LSN ≤ Shift LSN заведомо
совпадают со страницами, которые можно восстановить из целевой
резервной копии, то есть при восстановлении такие страницы можно
просто игнорировать.
Если подходящей на роль точки сдвига копии нет, восстановление
в режиме LSN невозможно (режим CHECKSUM доступен всегда).
На слайде копия Δ
2
не может служить точкой сдвига, поскольку не
соответствует никакому прошлому состоянию экземпляра: она была
сделана в первой линии времени, а экземпляр в некоторый момент
переключился на вторую линию. А копия Δ
1
удовлетворяет условиям
и будет выбрана в качестве точки сдвига.
Режим LSN требует корректности файла pg_control, поскольку из него
считывается Redo LSN и линия времени экземпляра, и наличия
необходимых файлов истории в архиве WAL. Также должны быть
включены контрольный суммы.
Однако если режим доступен, он оказывается более эффективным, чем
CHECKSUM. Файлы каталога данных все равно читаются полностью, но
в режиме CHECKSUM по резервной копии проверяются все страницы, а
в LSN — только измененные позже точки сдвига.