F.5. basebackup_to_shell — пример создания получателей резервной копии для модуля pg_basebackup #
В модуле basebackup_to_shell реализован дополнительный получатель базовых копий, названный shell. Он позволяет выполнить pg_basebackup --target=shell или, в зависимости от конфигурации этого модуля, pg_basebackup --target=shell: и вызвать серверную команду, выбранную администратором сервера для каждого tar-архива, созданного в процессе резервного копирования. Команда получит содержимое архива через стандартный ввод.ДОП_ИНФОРМАЦИЯ
Этот модуль разрабатывался в первую очередь как пример создания новых получателей резервной копии посредством модуля расширения, но в некоторых сценариях он может быть полезен сам по себе. Для использования модуля его нужно загрузить через shared_preload_libraries или local_preload_libraries.
F.5.1. Параметры конфигурации #
basebackup_to_shell.command(string)Команда, которую сервер должен выполнять для каждого архива, созданного в процессе резервного копирования. Если строка команды содержит символы
%f, они заменяются именем архива (например,base.tar). Символы%dв строке команды заменяются дополнительной информацией, указанной пользователем, — она должна задаваться обязательно, если строка команды содержит символы%d; в противном случае задать её нельзя. Из соображений безопасности описание может содержать только буквенные и цифровые символы. Символы%%в командной строке заменяются одним символом%. Если за символом%в командной строке следует любой другой символ или он стоит в конце строки, возникает ошибка.basebackup_to_shell.required_role(string)Роль, необходимая для использования получателя резервных копий
shell. Если роль не задана, этого получателя может использовать любой пользователь репликации.
F.5.2. Автор #
Роберт Хаас <rhaas@postgresql.org>