2024年9月26日:PostgreSQL 17 发布!
支持的版本:当前 (17) / 16 / 15
开发版本:开发版

49.1. 初始化函数 #

归档库通过动态加载共享库来加载,共享库的名称为archive_library的库基本名称。使用正常的库搜索路径来定位库。为了提供所需的归档模块回调并指示该库实际上是一个归档模块,它需要提供一个名为_PG_archive_module_init的函数。该函数的结果必须是指向ArchiveModuleCallbacks类型结构体的指针,该结构体包含核心代码利用归档模块所需的所有信息。返回值需要具有服务器的生命周期,这通常通过将其定义为全局范围内的static const变量来实现。

typedef struct ArchiveModuleCallbacks
{
    ArchiveStartupCB startup_cb;
    ArchiveCheckConfiguredCB check_configured_cb;
    ArchiveFileCB archive_file_cb;
    ArchiveShutdownCB shutdown_cb;
} ArchiveModuleCallbacks;
typedef const ArchiveModuleCallbacks *(*ArchiveModuleInit) (void);

仅需要archive_file_cb回调。其他回调是可选的。

提交更正

如果您在文档中看到任何不正确的内容,与您对特定功能的体验不符,或者需要进一步澄清,请使用此表单报告文档问题。