PostgreSql pg_basebackup 用法

时间:2025-03-18 22:39:11
-h host 或 --host=host:指定连接数据库的主机名或 IP 地址。
-p port 或 --port==port:指定连接的端口。
-s interval 或 --status-interval=interval:指定向服务器端周期反馈的秒数,如果服务器上配置了流复制的超时,在使用 --xlog=stream 时,需要设置这个参数,默认为 10s,设置为 0,表示不向服务器反馈状态。
-U username 或 --username=username:指定连接的用户名。
-w 或 --no-password:指定从来不提示输入密码。
-W 或 --password:强制让 pg_basebackup 出现输入密码的提示。
-D directory 或 --pgdata=directory:指定把备份写到哪个目录,目录不存在会自动创建,存在但不为空会备份失败。
-F format 或 --format=format:指定输出格式。“ format” 指一种格式,目前仅支持两种格式,一种是 p 或 plain 原样输出,另一种是 t 或 tar 压缩输出。
-x 或 --xlog:备份中产生的 xlog 文件也备份出来,这个选项与“-X fetch”是完全一样的,应用 xlog 文件把数据库推到一个一致点。使用这个选项需要设置“wal_keep_segments”参数,以保证在备份过程中,需要的 wal 日志不会被覆盖。
-X method 或 --xlog-method=method:method 可取值 f/fetch,其作用于 -x 相同,s/stream 表示备份开始后,使用另一个流复制连接,从主库接收 wal 日志,但这种方式,主库的 max_wal_senders 参数需要大于等于 2。
-z 或 --gzip:仅能与 tar 输出模式配合使用,表明输出的 tar 备份包是经过 gzip 压缩的,相当于生成了一个 . 的备份包。
-Z level 或 --compress=level:指定 gzip 的压缩级别,可以选 1~9 的数字,与 gzip 命令中的压缩级别一样,9 表示最高压缩率,但也最耗 CPU。
-R 或 --write-recovery-conf:生成文件。
-c fast|spread 或 --checkpoint=fast|spread:设置 checkpoint 模式是 fast 还是 spread。
-l label 或 --label=label:指定备份的一个标识,备份的标识是一个任意字符串,便于今后维护人员识别这个备份,该标识就是手工做基础备份时运行“select pg_start_backup(‘lable’)”传递给 pg_start_backup 函数的参数。在备份集中有一个文件叫 “backup_label”,这里面除了记录了开始备份时 wal 日志的起始位置、checkpoint 的 wal 日志位置、备份开始的时间外,也记录了这个标识串的信息。
-P 或 --progress:允许在备份过程中实时打印备份进度。
-v 或 --verbose:详细模式,使用了参数 -P 后,还会打印出正在备份的具体文件信息。
-? 或 --help:显示帮助信息。