Режим PTRACK
PTRACK — сокращение от Physical Truncate Tracking. PTRACK используется PostgreSQL для эффективного управления и отслеживания изменений в файлах базы данных.
PTRACK хранит сведения о том, какие страницы файлов были изменены и требуют записи на диск. СУБД отслеживает изменения в памяти и группирует их для последующей записи. При каждом изменении страницы добавляется отметка в PTRACK.
PTRACK используется при включенной опции full_page_writes
(postgresql.conf).
Для корректной работы подмодуля необходимо расширение ptrack
версии 2.6.0 или выше.
|
1. Настройка копирования в режиме PTRACK
Перед выполнением инкрементальной резервной копии в режиме PTRACK настройте PostgreSQL на работу с PTRACK.
-
Установите в конфигурационном файле
postgresql.confпараметруshared_preload_librariesзначениеptrack. -
Добавьте в конец конфигурационного файла
postgresql.confпараметрptrack.map_sizeи установите его значение равнымN÷ 1024, гдеN— объём кластера в мегабайтах. Увеличивать значениеptrack.map_sizeсверх этого не рекомендуется. Максимально допустимое значениеptrack.map_size—1024.Если до этих изменений была сделана полная резервная копия, то после вступления изменений в силу необходимо сделать новую полную резервную копию, иначе инкрементальное резервное копирование в режиме PTRACK завершится с ошибкой. -
Перезапустите сервис.
sudo systemctl restart <database_service> -
Войдите в БД от имени администратора СУБД.
sudo -u postgres psql -d <backupdb> -
Загрузите расширение
ptrack.CREATE EXTENSION ptrack;
Теперь модуль может выполнять инкрементальное резервное копирование в режиме PTRACK.