basebackup_to_shell — пример модуля shell для pg_basebackup
Эта страница переведена при помощи нейросети GigaChat.
basebackup_to_shell
добавляет пользовательскую цель резервного копирования под названием shell
. Это позволяет запускать pg_basebackup --target=shell
или, в зависимости от конфигурации этого модуля, pg_basebackup --target=shell:
DETAIL_STRING
, и вызывать команду сервера, выбранную администратором сервера, для каждого архива tar, созданного процессом резервного копирования. Команда будет получать содержимое архива через стандартный ввод.
Модуль разрабатывался главным образом в качестве примера того, как создать новую цель резервного копирования с помощью модуля расширения, но в некоторых сценариях он может быть полезен сам по себе. Чтобы функционировать, этот модуль должен быть загружен через shared_preload_libraries
или local_preload_libraries
.
Параметры конфигурации
basebackup_to_shell.command (string)
: Команда, которую сервер должен выполнить для каждого архива, созданного процессом резервного копирования. Если %f
встречается в строке команды, она будет заменена именем архива (например, base.tar
). Если %d
встречается в строке команды, она будет заменена подробностями цели, предоставленными пользователем. Детали цели требуются, если %d
используется в строке команды, и запрещены в противном случае. По соображениям безопасности, они могут содержать только алфавитно-цифровые символы. Если %%
встречается в строке команды, она будет заменена одним %
. Если %
встречается в строке команды после любого другого символа или в конце строки, происходит ошибка.
basebackup_to_shell.required_role (string)
: Роль, необходимая для использования цели резервного копирования shell
. Если это не установлено, любой пользователь репликации может использовать цель резервного копирования shell
.