Я настраиваю резервный сервер для установки 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 могут продолжать все операции без ограничений во время резервного копирования. Возможно, с потерей производительности из-за нагрузки ввода-вывода, вызванной самим резервным копированием, но этого невозможно избежать.