pg_backup_stop()
是一个系统函数,用于完成使用 pg_backup_start()
启动的在线备份。
pg_backup_stop()
添加于 PostgreSQL 15,替换了 pg_stop_backup()
用法
pg_backup_stop ( [wait_for_archive
boolean
] ) →
record (lsn
pg_lsn
,labelfile
text
,spcmapfile
text
)
在执行 pg_backup_start()
启动在线备份后,应使用可靠的方法(例如 rsync)将数据目录复制到另一个位置。完成此过程后,调用 pg_backup_stop()
并返回一个 备份标签 文件和一个 表空间映射 文件,这些文件必须放置在复制目标位置。
请注意,通常最好使用诸如 Barman 或 pgBackRest 之类的备份实用程序来管理备份 PostgreSQL 实例的过程,并使用诸如 repmgr 之类的工具来克隆 PostgreSQL 实例。
变更历史
- PostgreSQL 15
- 添加 (提交 58c41712)
示例
以下示例用法:
postgres=# SELECT pg_backup_start('foo'); pg_backup_start ----------------- 0/4000028 (1 row) postgres=# SELECT * FROM pg_backup_stop(); NOTICE: WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup lsn | labelfile | spcmapfile -----------+---------------------------------------------------------------+------------ 0/7D37068 | START WAL LOCATION: 0/4000028 (file 000000010000000000000004)+| | CHECKPOINT LOCATION: 0/4000060 +| | BACKUP METHOD: streamed +| | BACKUP FROM: primary +| | START TIME: 2022-05-28 09:52:22 JST +| | LABEL: foo +| | START TIMELINE: 1 +| | | (1 row)
在此示例中,未返回 表空间映射 文件。
参考文献
- PostgreSQL 文档: 备份控制函数