PostgreSQL basebackup备份

来源:互联网 发布:dota2看视频软件 编辑:程序博客网 时间:2024/06/06 08:47
#!/bin/shlst=(127.0.0.1:5432:xm_rep:123456127.0.0.1:5432:xm_rep:123456)for item in ${lst[@]}do        host=$(echo ${item} | awk -F':' '{print $1}')        port=$(echo ${item} | awk -F':' '{print $2}')        user=$(echo ${item} | awk -F':' '{print $3}')        passwd=$(echo ${item} | awk -F':' '{print $4}')TMP="/home/work/data/tmp/dump.sh"t=`date '+%Y%m%d%H%M%S'`d="data${port}_${t}"rm -f $TMP# create expect scriptcat > $TMP << EOFset timeout 432000spawn /home/work/app/postgresql-9.6.1/bin/pg_basebackup -h ${host} -p ${port} -U ${user} -F p -x -R -l backup${t} -r 30M -D /home/work/data/backup/postgresql/${d}expect "Password:"send "${passwd}\n"expect eofexitEOF/usr/bin/expect -f $TMPcd /home/work/data/backup/postgresql/tar zcf ${d}.tar.gz ${d}find ./ -mtime +15 -name "*.tar.gz" -exec rm -rf {} \;rm -rf ${d}rm -f $TMPdone



pg_backup.sh #!/bin/shlst=(127.0.0.1:5016:xm_rep:password127.0.0.1:5006:xm_rep:password127.0.0.1:5018:xm_rep:password127.0.0.1:5022:xm_rep:password)> ~/.pgpasschmod 600 ~/.pgpassfor item in ${lst[@]}do    host=$(echo ${item} | awk -F':' '{print $1}')    port=$(echo ${item} | awk -F':' '{print $2}')    db=$(echo ${item} | awk -F':' '{print $3}')    user=$(echo ${item} | awk -F':' '{print $4}')    passwd=$(echo ${item} | awk -F':' '{print $5}')    echo "${host}:${port}:*:${user}:${passwd}" >> ~/.pgpass    t=`date '+%Y%m%d%H%M%S'`    d="${host}_${port}_${db}_data${port}_${t}"    /home/work/app/postgresql/bin/pg_basebackup -h ${host} -p ${port} -U ${user} -w -F t -P -x -R -l backup${t} -r 30M -D - | lz4 -B4 | openssl enc -e -aes-256-cbc -k "key"> /home/work/data/backup/postgresql/${d}.tar.lz4    find /home/work/data/backup/postgresql/ -mtime +15 -name "*.tar.lz4" -exec rm -rf {} \;done
1 0