技术分享
Postgres for linux 备份脚本
2021-07-03
[root@localhost bak_linux]# vi linux_postgres_bak.sh
#!/bin/sh
#备份的文件放置的路径
bak_path=/home/postgres
BACKBASE=$bak_path/wmpay_bak
log_file=$bak_path/$(date +%Y%m%d)#linux_postgres_bak.log
#把执行结果写到日志中
exec 1>>$log_file 2>&1
#引用postgres用户下的数据库备份脚本,备份数据库
su - postgres -c "sh /home/postgres/postgres_bak.sh"
#压缩备份
tar -zcvf $bak_path/wmpay$(date +%Y%m%d)bak.tar.gz $BACKBASE
#上传压缩的备份
ftp -i -n -v << FTPIT
open 192.168.0.27
user 111 111
binary
lcd $bak_path
mput *bak.tar.gz *#linux_postgres_bak.log
by
FTPIT
#删除备份压缩文件
rm -rf $bak_path/*bak.tar.gz
rm -rf $bak_path/*#linux_postgres_bak.log
#删除3天前的归档日志
&&&&&&&&&&&&&&&&&&&&&&&&&引用到的postgres备份脚本
[postgres@localhost ~]$ cat postgres_bak.sh
#!/bin/sh
#变量
PGDATA=$HOME/pgdata
BACKBASE=$HOME/wmpay_bak
ARCHIVE=$HOME/wmpay_archive_log
#备份
psql -d wmpay -c "select PG_START_BACKUP('test_backup')"
cp -R $PGDATA/* $BACKBASE
psql -d wmpay -c "select PG_STOP_BACKUP()"
psql -d wmpay -c "select pg_switch_xlog()"
- 标签:
-
行业资讯