bak_dir="/home/backupfiles/db" #备份路径 pg_dir="/usr/local/pgsql/bin" #pgsql路径 date_dir=`date +%Y/%m/%d` dbname="数据库名字" PGPASSWORD="超级用户postgres的密码" export PGPASSWORD > /dev/null 2>&1 mkdir -p ${bak_dir}/${date_dir} > /dev/null 2>&1 chmod 777 ${bak_dir}/${date_dir} > /dev/null 2>&1 su postgres -c "${pg_dir}/pg_dump ${dbname} > ${bak_dir}/${date_dir}/${dbname}".dump cd ${bak_dir}/${date_dir} tar czf ${dbname}.tar ${dbname}.dump gzip ${dbname}.tar rm -rf ${bak_dir}/${date_dir}/${dbname}.dump
上面保存/usr/sbin/dbbackupcron.sh
vi /etc/crontab
10 08 * * * /usr/sbin/dbbackupcron.sh #每天8:10自动备份