2025年9月25日: PostgreSQL 18 釋出!
支援的版本:當前 (18) / 17 / 16 / 15
開發版本:devel

F.4. basebackup_to_shell — 示例“shell”pg_basebackup 模組 #

basebackup_to_shell 添加了一個自定義的 basebackup 目標,名為 shell。這使得可以執行 pg_basebackup --target=shell,或者根據此模組的配置方式,執行 pg_basebackup --target=shell:DETAIL_STRING,並使伺服器管理員選擇的伺服器命令在備份過程中生成的每個 tar 歸檔上執行。該命令將透過標準輸入接收歸檔的內容。

此模組主要用作建立新的備份目標的擴充套件模組的示例,但在某些場景下,它本身也可能很有用。為了使此模組正常工作,必須透過 shared_preload_librarieslocal_preload_libraries 進行載入。

F.4.1. 配置引數 #

basebackup_to_shell.command (string)

伺服器在備份過程中為每個生成的歸檔應執行的命令。如果命令字串中出現 %f,它將被替換為歸檔的名稱(例如 base.tar)。如果命令字串中出現 %d,它將被替換為使用者提供的目標詳細資訊。如果命令字串中使用 %d,則必須提供目標詳細資訊,否則不允許使用。出於安全原因,它只能包含字母數字字元。如果命令字串中出現 %%,它將被替換為單個 %。如果命令字串中出現 %,後跟任何其他字元或位於字串末尾,則會發生錯誤。

basebackup_to_shell.required_role (string)

在使用 shell 備份目標時所需的角色。如果未設定此項,任何複製使用者都可以使用 shell 備份目標。

F.4.2. 作者 #

Robert Haas

提交更正

如果您在文件中發現任何不正確之處、與您在使用特定功能時的經驗不符之處,或需要進一步說明之處,請使用此表單報告文件問題。