3.8.3. 进行基础备份


您可以通过多种方法创建基础备份:执行基础备份的最简单方法是对运行的 PostgreSQL 服务器使用 pg_basebackup 工具。

基础备份进程会创建一个备份历史记录文件,该文件存储在 WAL 归档区,并以基础备份所需的第一个 WAL 段文件来命名。

备份历史记录文件是一个小文本文件,其包含开始和结束时间,以及备份的 WAL 段。如果您使用标签字符串来标识关联的转储文件,那么您可以使用备份历史记录文件来确定要恢复哪个转储文件。

注意

请考虑保留多个备份集,以确保您可以恢复数据。

先决条件

  • 您必须以 postgres 超级用户身份、具有数据库管理员特权的用户身份或至少具有 REPLICATION 权限的其他用户身份来运行命令。
  • 您必须保留在基础备份期间和之后生成的所有 WAL 段文件。

流程

  1. 使用 pg_basebackup 工具执行基础备份。

    • 将基础备份创建为单个的文件(纯格式):

      $ pg_basebackup -D <backup_directory> -Fp

      使用您选择的备份位置替换 backup_directory

      如果您在与服务器相同的主机上使用表空间并执行基础备份,那么也必须使用 --tablespace-mapping 选项,否则当试图将备份写入到同一位置时,备份将失败。

    • 将基础备份创建为一个 tar 归档(tar 和压缩格式):

      $ pg_basebackup -D <backup_directory> -Ft -z

      使用您选择的备份位置替换 backup_directory

      要恢复此数据,您必须手动提取正确位置中的文件。

    要指定serverpg_basebackup将与哪个数据库联系,请使用以下命令行选项:

    • -h 选项用来定义主机的。

      默认主机要么是本地主机,要么是 PGHOST 环境变量所指定的主机。

    • -p 选项用来定义端口 。

      默认端口是由 PGPORT 环境变量或编译后的默认值指明的。

  2. 基础备份进程完成后,将备份历史记录文件中指定的数据库集群副本和备份过程中使用的 WAL 段文件进行安全归档。
  3. 删除比基础备份中使用的 WAL 段文件数值更低的WAL段,因为这些比基础备份旧,并且不再需要进行恢复。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部