pg_basebackup [选项] …
控制输出的选项:
-D, --pgdata=DIRECTORY 接收基本备份到目录,如果不存在会自动创建
-F, --format=p|t 输出格式(plain,直接拷贝数据文件,tar 配合 -z -Z 进行打包压缩)
-r, --max-rate=RATE 传输数据目录的最大传输速率(以 kB/s 为单位,或使用后缀“k”或“M”)
-R,–write-recovery-conf 是否输出recovery-conf文件,方便后续使用备份快速搭建出从节点
-T, --tablespace-mapping=OLDDIR=NEWDIR 将 OLDDIR 中的表空间重定位到 NEWDIR
-X, --wal-method=none|fetch|stream 包含指定方法所需的 WAL 文件
-z, --gzip 压缩 tar 输出
-Z, --compress=0-9 使用给定的压缩级别压缩 tar 输出
常规选项:
-c, --checkpoint=fast|spread 设置快速或扩展检查点
-C, --create-slot 创建复制槽
-l, --label=LABEL 设置备份标签
-n, --no-clean 出错后不清理
-N, --no-sync 不等待更改安全写入磁盘
-P, --progress 显示进度信息
-S, --slot=SLOTNAME 要使用的复制槽
-v, --verbose 输出详细信息
-V, --version 输出版本信息,然后退出
–no-slot 防止创建临时复制槽
–no-verify-checksums 不验证校验码
-?, --help 显示此帮助,然后退出
连接选项:
-d, --dbname 数据库名称
-h, --host 数据库服务器主机ip或套接字目录
-p, --port 数据库口号
-s, --status-interval=状态包发送到服务器的间隔时间(以秒为单位)
-U, --username 连接用户,要有super权限
-w, --no-password 从不提示输入密码
常用示例
数据库物理备份:
(1)以完整文件的形式备份数据库
pg_basebackup -U sysdba -Fp -v -D /opt/highgo/data
(2)以压缩的文件形式备份数据库
pg_basebackup -U sysdba -Ft -v -D /opt/highgo/data
(3)存在创建的新表空间时,进行备份数据库(如下原表空间为/highgo/cheshi)
pg_basebackup -U sysdba -Fp -v -D /opt/highgo/data -T "/highgo/cheshi=/opt/highgo/data/ceshibase"
数据库还原:
(1)如果数据库备份为文件的形式,未进行压缩可直接进行数据库文件的替换
mv /opt/highgo/data $HGDB_HOME/
启动数据库
pg_ctl start
(2) 如果数据库备份为压缩的形式,需进行解压到数据文件夹内
mkdir -p $HGDB_HOME/data
tar -xvf /opt/highgo/data/base.tar -C /opt/highgo/hgdb-see-4.5.8/data
tar -xvf /opt/highgo/data/pg_wal.tar -C /opt/highgo/hgdb-see-4.5.8/data/pg_wal/
启动数据库
pg_ctl start