正文

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

文章摘要

这篇文章介绍了如何使用Bash脚本自动化地备份PostgreSQL数据库数据。备份流程包括以下步骤: 1. 设置备份目录和目标路径。 2. 获取当前日期并生成备份文件名。 3. 使用tar命令将PostgreSQL数据压缩到备份目录。 4. 计算并保留最近的备份文件数(默认保留10个 backups)。 5. 删除超过保留数量的过期备份文件。 整个备份过程实现了对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========”