PostgreSQL 提供了创建连续归档自定义模块的基础设施(参见 第 25.3 节)。虽然通过 shell 命令(即 archive_command)进行归档要简单得多,但自定义归档模块通常会更加健壮和高效。
当配置了自定义的 archive_library 时,PostgreSQL 会将完成的 WAL 文件提交给模块,并且服务器会避免回收或删除这些 WAL 文件,直到模块指示这些文件已成功归档。最终由模块决定如何处理每个 WAL 文件,但许多建议列在 第 25.3.1 节。
归档模块至少必须包含一个初始化函数(参见 第 49.1 节)和必需的回调(参见 第 49.2 节)。但是,归档模块也被允许做更多事情(例如,声明 GUC 并注册后台工作进程)。
contrib/basic_archive
模块包含一个可用的示例,它演示了一些有用的技术。
如果您在文档中发现任何不正确之处、与您对特定功能的实际使用经验不符之处,或需要进一步澄清之处,请使用 此表单 报告文档问题。