通常のバックアップスクリプトを作成するためのシェル+ crontabのPostgreSQLデータベース

通常のバックアップスクリプトを作成するためのシェル+ crontabのPostgreSQLデータベース

ビジネスの背景

開発中は、定期的にデータベースのバックアップは非常に必要です

最初のステップ:シェルスクリプトのpostgresql_backups.shを書きます

#! /bin/sh
#获取一个时间戳 
ymdhm=`date +%Y%m%d%H%M`
echo $timestamp $ymdhm
#创建文件夹
mkdir -p /home/pgdatabackups/$ymdhm

#路径
backupspath=/home/pgdatabackups/$ymdhm

#数据库备份,如果pg_dump找不到命令,则利用find找到命令所在位置
#使用find / -name pg_dump 找到pg_dump命令工具
pg_dump=/usr/pgsql/bin/pg_dump

#设置密码,可以不输入密码(与配置文件的有关)
export PGPASSWORD=123456


#剔除表 ods_new_log; 127.0.0.1 不行,则改成对应的ip
$pg_dump -h 127.0.0.1  -p 5432 -U postgres -T ods_new_log -F c -b -v -f   $backupspath/tenant_1011014.backups  tenant_1011014
$pg_dump -h 127.0.0.1  -p 5432 -U postgres -F c -b -v -f  $backupspath/metadata.backups  metadata
$pg_dump -h 127.0.0.1  -p 5432 -U postgres -F c -b -v -f  $backupspath/platform.backups  platform

#其他,定期情况文件
#定期清理文件; 按2分钟删除文件(包括文件夹)
#find  /home/pgdatabackups/ -mmin +2 -type d -exec rm -rf {} \;

#按7天删除文件(包括文件夹)
find  /home/pgdatabackups/ -mtime +7 -type d -exec rm -rf {} \;

第二のステップ追加のcrontab

crontab -e
# 每天23点备份,注意shell脚本位置
0 23 * * * /home/pgdatabackups/postgresql_backups.sh
公開された274元の記事 ウォンの賞賛119 ビュー290 000 +

おすすめ

転載: blog.csdn.net/qq_31156277/article/details/103655570