docker运行PostgreSQL数据库维护执行脚本备份数据库与更新表结构的方法(dockerfile python)墙裂推荐

随心笔谈3年前发布 admin
215 0 0

文章摘要

这篇文章描述了一种使用Bash脚本自动化备份PostgreSQL数据的方法。脚本首先设置备份目录和目标路径,检查目标目录是否存在并创建。接着获取当前日期和设置保留数据的天数。然后从PostgreSQL数据目录中按日期压缩数据到备份目录。脚本还动态删除超过保留天数的备份文件,确保只保留最近的备份。整个过程实现了对PostgreSQL数据的高效备份和管理。

#!/bin/bash
echo “========start backup pg data========”
# pg 数据目录
pgdata=/home/signal/instance/volumes
target=/home/bak/pgbak
if [ ! -d $target ];then
mkdir -p $target
else
echo “文件夹已经存在”
fi
# 当前日期
curDay=$(date “+%Y-%m-%d”)
echo ${curDay}
# 保留文件数
ReservedNum=10
# 去pg 数据目录,按日期压缩到备份文件夹
cd $pgdata
tar -zcvf $target/postgresql-$curDay.tgz postgresql
# 删除多余天数的压缩文件
#*.tgz表示筛选文件类型,去掉则针对整个目录的文件
cd $target
FileNum=$(ls -l https://www.jb51.net/article/*.tgz |grep ^- |wc -l)
while(( FileNum > $ReservedNum))
do
OldFile=$(ls -rt https://www.jb51.net/article/*.tgz| head -1)
rm -f $OldFile
let “FileNum–”
done
echo “========bakup pg data end========”

© 版权声明

相关文章