PG备份恢复工具pg_probackup

简介: PG备份恢复工具pg_probackup

PG备份恢复工具pg_probackup


pg_probackup是管理PG数据库集群备份和恢复的工具。用于执行周期性备份PG实例。兼容PG9.5,96,10,11,12,13。和其他备份解决方案相比,提供下面优势,帮助部署不同备份策略和处理大量数据:

1、增量备份。页级别的增量备份,节省磁盘空间,加速备份和转储。有3种不同增量模式,根据数据流部署不同备份策略。

2、增量转储。页级别的转储,在目标目录中重用有效未更改的页面来加速转储。

3、合并。帮助部署”incrementally updated backups”策略,无须进行完备备份。

4、验证。自动数据一致性校验和按需备份校验,无须实际数据恢复。

5、校验。使用checkdb命令按需验证PG实例

6、保留。根据保留策略管理存档和备份。可以根据恢复实际或要保留的备份数配置保留策略。还可以为特定备份制定生存时间,过期的备份可以合并或者删除。

7、并行化。在多个并行线程上进行备份、恢复、合并、删除、验证和检验

8、压缩。以压缩状态存储备份数据以节省磁盘空间

9、消除重复数据。通过不复制未更改的非数据文件如_vm或者_fsm来节省磁盘空间

10、远程操作。备份位于远程系统上的PG实例或远程恢复备份

11、从备机上进行备份。通过从备机上进行备份来避免主机上的额外负载。

12、外部目录。备份位于数据目录PGDATA之外的文件和目录,如脚本、配置文件、日志或SQL转储文件。

13、备份Catalog。以纯文本或JSON格式获取备份列表和相应的元信息

14、归档catalog。以纯文本或JSON格式获取所有WAL时间线和相应元信息的列表

15、部分还原。仅还原制定的数据库或从转储中排出指定数据库

未管理备份数据,pg_probackup创建一个备份目录。这个目录存储所有备份文件包括额外的元信息,以及WAL归档。可以将不同实例的备份存储在单个目录的不同子目录中。通过该工具可以进行完整备份和增量备份。

1、全量备份,包含从头恢复数据库集群需要的所有数据文件

2、增量备份。只存储自上次以来更改的数据。允许减小备份大小并加快备份操作。支持以下增量备份模式:

1)PAGE备份。扫描自上次备份以来归档的所有WAL文件。新创建的备份仅包含WAL记录到的页面。如果这些文件大小与数据库集群文件总大小相当,则加速比较小,但备份占用空间仍然较小。

2)DELTA备份。读取PGDATA目录下所有数据文件,仅拷贝自上次备份以来的脏页。无须持续归档。此外,该模式还可以施加与全量备份相同的只读IO压力。

3)PTRACK备份。会动态追踪页面改动。无须持续归档。每次更新数据页时,都会在PTRACK位图标记。由于一个页面只需要PTRACK位图中的一个bit,这个位图非常小。跟踪意味着会有开销,但会显著加速增量备份。

无论选择哪种备份类型,都支持以下WAL传递策略:

1)自主备份,通过复制协议传输将集群恢复到备份时的一致性状态需要的所有WAL文件。即使没有设置连续归档,需要的WAL段也会包含在备份中。

2)归档备份,依赖于连续归档。

 

限制:备份和转储的PG必须block_sizewal_block_size兼容且有相同主版本号;Windows下不支持ssh远程备份;ssh远程备份时,pg_probackup的版本必须相同。


原文


https://github.com/postgrespro/pg_probackup

目录
相关文章
|
4月前
|
SQL 关系型数据库 数据库
【一文搞懂PGSQL】4.逻辑备份和物理备份 pg_dump/ pg_basebackup
本文介绍了PostgreSQL数据库的备份与恢复方法,包括数据和归档日志的备份,以及使用`pg_dump`和`pg_basebackup`工具进行逻辑备份和物理备份的具体操作。通过示例展示了单库和单表的备份与恢复过程,并提供了错误处理方案。此外,还详细描述了如何利用物理备份工具进行数据损坏修复及特定时间点恢复(PITR)的操作步骤,以应对误操作导致的数据丢失问题。
|
7月前
|
关系型数据库 数据库 PostgreSQL
postgresql|数据库|恢复备份的时候报错:pg_restore: implied data-only restore的处理方案
postgresql|数据库|恢复备份的时候报错:pg_restore: implied data-only restore的处理方案
302 0
|
SQL 机器学习/深度学习 存储
PostgreSQL逻辑备份pg_dump使用及其原理解析
PostgreSQL逻辑备份pg_dump使用及其原理解析
290 0
|
关系型数据库 数据库 PostgreSQL
PostgreSQL pg_rewind报错分析
PostgreSQL pg_rewind报错分析
206 0
|
关系型数据库 数据库 PostgreSQL
使用pg_resetxlog修复PostgreSQL控制文件的方法
PostgreSQL 控制文件在$PGDATA/global目录下名为pg_control. 控制文件中记录了以下三部分信息 : 1. initdb时生成的静态信息 : pg_control version number: 922 C
11882 0
|
关系型数据库 PostgreSQL
postgresql 的WAL日志解析工具 pg_waldump
postgresql 的WAL日志解析工具 pg_waldump
1540 0
postgresql 的WAL日志解析工具 pg_waldump
|
关系型数据库
备份工具pg_dump的使用《postgres》
备份工具pg_dump的使用《postgres》
354 0
|
关系型数据库 数据库 PostgreSQL
PostgreSQL pg_basebackup
本文探讨 pg_basebackup工具,本地备份、远程备份、单一表空间本地数据库的备份、表空间重定向
1921 0
PostgreSQL pg_basebackup
|
关系型数据库 数据库 C语言
|
关系型数据库 数据库 PostgreSQL
下一篇
DataWorks