PostgreSQL之pg_basebackup命令详解

1. 简介

pg_basebackup被用于获得一个正在运行的PostgreSQL数据库集簇的基础备份。

获得这些备份不会影响连接到该数据库的其他客户端,并且可以被用于时间点恢复 以及用作一个日志传送或流复制后备服务器的开始点。

pg_basebackup建立数据库集簇文件的一份二进制副本,同时保证系统进入和退出备份模式。备份总是从整个数据库集簇获得,不可能备份单个数据库或数据库对象。

备份通过一个常规PostgreSQL连接制作,并且使用复制协议。该连接必须由一个超级用户或者一个具有REPLICATION权限的用户建立,并且pg_hba.conf必须显式地允许该复制连接。

该服务器还必须被配置,使 max_wal_senders 设置得足够高以留出至少一个会话用于备份,一个用于WAL流(如果使用)。

在同一时间可以有多个pg_basebackup运行,但是从性能的角度来说最好只做一个备份并且复制结果。

pg_basebackup不仅能从主控机也能从后备机创建一个基础备份。要从后备机获得一个备份,设置后备机让它能接受复制连接(也就是,设置max_wal_senders和hot_standby,并且配置基于主机的认证)。你将也需要在主控机上启用full_page_writes。

注意在来自后备机的在线备份中有一些限制:

  • 不会在被备份的数据库集簇中创建备份历史文件。

  • 如果正在使用-X none,不保证备份所需的所有 WAL 文件在备份结束时被归档。

  • 如果在在线备份期间后备机被提升为主控机,备份会失败。

  • 备份所需的所有 WAL 记录必须包含足够的全页写,这要求你在主控机上启用full_page_writes并且不使用一个类似pg_compr

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值