Назад | Перейти на главную страницу

Что такое «режим резервного копирования» в postgresql?

Я настраиваю резервный сервер для установки PostgreSQL 9.3. Я искал использовать pg_basebackup чтобы получить начальную отправную точку для резервного сервера. Однако документация для pg_basebackup упоминает, что он «[удостоверяется], что система автоматически переводится в режим резервного копирования и выходит из него». Кажется, я не могу найти, что такое «режим резервного копирования» или какие эффекты он будет иметь на рабочем сервере.

Документация для pg_basebackup упоминает, что резервная копия «выполняется без воздействия на базу данных других клиентов», но я должен быть уверен, что «режим резервного копирования» не сделает ничего неожиданного для рабочего сервера.

Включение и выключение режима резервного копирования означает, что он выполнит pg_start_backup() функция в начале и pg_stop_backup() в конце.

Они описаны в Функции управления резервным копированием в документации.

Эффект pg_start_backup() на производственном сервере возможен всплеск ввода-вывода, вызванный установкой контрольных точек (применение журнала транзакций, также называемого файлами xlog или WAL, к окончательным файлам данных).
Это может быть смягчено опцией --checkpoint=fast|spread но это уже spread по умолчанию согласно Справочная страница pg_basebackup.

«Не влияет на других клиентов» означает, что программы SQL могут продолжать все операции без ограничений во время резервного копирования. Возможно, с потерей производительности из-за нагрузки ввода-вывода, вызванной самим резервным копированием, но этого невозможно избежать.