1、創(chuàng)建備份腳本存放文件夾和備份文件存放文件夾
mkdir /home/backup
mkdir /home/backup-file
2、創(chuàng)建備份腳本
cd /home/backup
vim pg-backup.sh
#!/bin/bash
echo "開始執(zhí)行 PostgreSql 數(shù)據(jù)庫【pg-datasource-test】的備份!"
echo "backup ing -------------------"
nowtime=$(date "+%Y-%m-%d")
export PGPASSWORD=123
echo "時間:" $nowtime
set timeout 500
/home/postgresql/bin/pg_dump --file "/home/backup/backup-file/pg-datasource-"$(date "+%Y-%m-%d")".backup" --host "127.0.0.1" --port "5432" --username "postgres" --dbname "pg-datasource-test" -v -Fc --blobs --encoding "UTF8"
echo "數(shù)據(jù)庫備份結(jié)束!"
exit;
3、賦予創(chuàng)建的腳本運行權(quán)限
chmod +x ./pg-backup.sh
./ 相對路徑寫法
4、測試創(chuàng)建的腳本
bash pg-backup.sh
如果成功運行,則會在backup-file文件夾下面出現(xiàn)pg-datasource-2023-12-25.backup文件
5、創(chuàng)建刪除腳本
#!/bin/bash
echo "刪除 8 天前的 數(shù)據(jù)庫備份文件!"
find /home/backup-file -name "*.backup" -mtime +7 -exec rm -rf {} \;
set timeout 1000
echo " 8 天前的數(shù)據(jù)庫備份文件刪除完畢!"
6、創(chuàng)建定時任務
crontab -e
0 23 * * * /home/backup/pg-backup.sh
7、查看定時任務列表
crontab -l