pg_dump备份脚本(自用)原创
金蝶云社区-薛孟洋
薛孟洋
1人赞赏了该文章 307次浏览 未经作者许可,禁止转载编辑于2024年02月23日 09:37:18

#!/bin/bash

source /etc/profile

source ~/.bashrc

DATE=`date +%Y%m%d%H%M%S`

newdir=/kingdee/cosmic/postgres/pgbackup/fenku_$DATE

dbnames=`psql -d postgres -c "SELECT datname FROM pg_database;" | grep -E "(demo_|mc)"`

# 创建新备份文件夹

[ ! -d "$newdir" ] && mkdir -p "$newdir"

cd  $newdir

for dbname in $dbnames; do

#export PGPASSWORD=Cosmic@2020; pg_dump -U postgres -v -Fc -d $dbname --no-owner -f $newdir/$dbname-$DATE.dump

#备份内容详细输出到日志文件里

 export PGPASSWORD=Cosmic@5487; pg_dump -U postgres -v -Fc -d $dbname --no-owner -f $newdir/$dbname-$DATE.dump  2>$newdir/$dbname-$DATE.log

done


#过滤所有备份日志文件里面的error信息,合并一个文件

grep error: *.log > 0error-$DATE.log


# 删除旧的备份文件

find /kingdee/cosmic/postgres/pgbackup -name "fenku_*" -mtime +5 -exec rm -rf  {} \;


#0 15 * * * sh /kingdee/cosmic/postgres/pgbackup/pgbak.sh

##*********************************************************************************##

# 导入库参考:

# create database test1213_fi with owner=cosmic encoding='UTF8' tablespace=pg_default LC_COLLATE='en_US.UTF-8' LC_CTYPE='en_US.UTF-8' CONNECTION LIMIT=-1 TEMPLATE template0;

# GRANT ALL ON DATABASE test1213_fi  TO cosmic;

# pg_restore -U postgres --no-owner --role cosmic  -d test1213_fi  -v /kingdee/pgbak/cosmic_fi.dump


赞 1