类型: | string |
上下文: | postmaster |
重新开始: | true |
以来: | 12 |
用于获取 WAL 文件系列的一个已归档段的本地 shell 命令。这个参数是归档恢复所必需的,但是对于流复制是可选的。 在该字符串中的任何%f
会被替换为从归档中获得的文件的名字,并且任何%p
会被在服务器上的复制目标路径名替换(该路径名是相对于当前工作目录的,即集簇的数据目录)。 任何%r
会被包含上一个可用重启点的文件的名字所替换。 在那些必须被保留用于使得一次恢复变成可重启的文件中,这个文件是其中最早的一个,因此这个信息可以被用来把归档截断为支持从当前恢复重启所需的最小值。 %r
通常只被温备配置(见warm-standby)所使用。要嵌入一个真正的%
字符,需要写成%%
。
很重要的一点是,该命令只有在成功时才返回一个为零的退出状态。 该命令将会被询问不存在于归档中的文件名,当这样被询问时它必须返回非零。例子:restore_command = 'cp /mnt/server/archivedir/%f "%p"'restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows 一个例外是如果该命令被一个信号(不是SIGTERM,它是数据库服务器关闭的一部分)或者一个 shell 错误(例如命令未找到)终止,则恢复将会中止并且服务器将不会启动。
这个参数只能在服务器启动时被设置。