basebackup_to_shell新增了一个名为shell的自定义基础备份目标。这样便可以运行pg_basebackup --target=shell,或者根据该模块的配置运行pg_basebackup --target=shell:,并使服务器管理员选定的服务器命令针对备份过程生成的每个 tar 归档执行一次。该命令将通过标准输入接收归档内容。DETAIL_STRING
该模块主要是用作一个示例,用于说明如何通过扩展模块创建新的备份目标,但在某些场景下,它本身也可能有用。要使该模块正常工作,必须通过shared_preload_libraries或local_preload_libraries加载它。
basebackup_to_shell.command (string) 服务器应为备份过程生成的每个归档执行的命令。如果命令字符串中出现%f,它将被替换为归档名称(例如base.tar)。如果命令字符串中出现%d,它将被替换为用户提供的目标详情。如果命令字符串中使用了%d,则必须提供目标详情;否则禁止提供目标详情。出于安全原因,目标详情只能包含字母数字字符。如果命令字符串中出现%%,它将被替换为单个%。如果命令字符串中出现%,其后跟着任何其他字符,或者它出现在字符串末尾,则会发生错误。
basebackup_to_shell.required_role (string) 使用shell备份目标所需的角色。如果未设置该参数,则任何复制用户都可以使用shell备份目标。
Robert Haas <rhaas@postgresql.org>
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。