背景环境

centos7.9,postgresql14 在执行备份命令的时候,不像mysql,可以用-p的参数然后跟密码即可,-p在pg里面是跟端口的参数 所以有适当的变通

步骤

  1. 使用sh脚本 vi backup.sh
export PGPASSWORD="password"
pg_dump -U postgres -Fc db_name >"/db_backup/db.dump
  1. 安装sshpass
yum install sshpass -y

备份命令则为

 sshpass -p "password"  /usr/pgsql-14/bin/pg_dump -U postgres -Fd -j 6   "db_name" -f  /db_backup/test

格式为sshpass -p 密码 备份命令,其实sshpass 也适合部分需要简单交互输入参数的命令